// allviews cote testcote arriere // viewopts cote brim10mm include module cote(){ thick=7; translate([0,-1.5,0]) rotate([0,0,5]) cube([15+2,5,thick]); translate([15,0,0]) rotate([90,0,90]){ cube([70,thick*2,5]); translate([0,0,-15]) difference(){ translate([0,0,15]) cube([5, thick, 55]); union(){ translate([-2,thick/2,30]) rotate([0,90,0]) cylinder(r=2,h=20); translate([-2,thick/2,50]) rotate([0,90,0]) cylinder(r=2,h=20); } } translate([65,0,-15]){ cube([5,5,15]); translate([0,0,2.5]) rotate([270,0,0]) cylinder(r=2.5,h=5); } translate([45,0,0]) cube([5,5,15]); } } module testcote(){ intersection(){ translate([0,-10,0]) cube([100,100,1]); view1(); } } module main_view(view){ if (view=="cote"){ cote(); }else if (view=="arriere"){ difference(){ cube([70,30,1]); union(){ translate([4,5,-1]) cylinder(r=2,h=3); translate([4,25,-1]) cylinder(r=2,h=3); translate([70-4,5,-1]) cylinder(r=2,h=3); translate([70-4,25,-1]) cylinder(r=2,h=3); } } }else if (view=="testcote"){ testcote(); } }