// allviews 1 2 include module lettre(epaisseur=2,largeur=6,rayonTrou=4,angle=1){ rayonTotale=largeur+rayonTrou; difference() { cylinder(h=epaisseur,r=largeur+rayonTrou,$fn=40); union() { translate([0,0,-epaisseur]) cylinder(h=epaisseur*3,r=rayonTrou,$fn=40); scale([1,angle,1]) translate([0,(sin(45)*rayonTotale),0]) rotate([0,0,45]) translate([-rayonTotale/2,-rayonTotale/2,-epaisseur]) cube([10000, 10000, epaisseur*3]); } } } module lettreCreuse(){ scale([3.7,3.7,1]) difference() { lettre(5,6,4,1); union() { translate([0,0,2]) lettre(10,4.5,4.7,0.8); translate([-7,0,-1]) cylinder(h=10,r=0.7,$fn=40); } } } module main_view(view){ if (view=="1"){ lettre(); } else if(view=="2") { lettreCreuse(); } }