module scharnier(){ // cube mit 2 Löchern difference(){ translate([1,0,0]) cube([90-2,10,5]); translate([1,2.5,2.5]) rotate([0,90,0]) cylinder(h=10,d1=5,d2=0,$fn=20); translate([90-1,2.5,2.5]) rotate([0,90,180]) cylinder(h=10,d1=5,d2=0,$fn=20); } // Jetzt die positiven Zylinder translate([-1,2.5,2.5]) rotate([0,90,0]) cylinder(h=10,d1=5,d2=0,$fn=20); translate([90+1,2.5,2.5]) rotate([0,90,180]) cylinder(h=10,d1=5,d2=0,$fn=20); } module kiste(){ difference(){ cube([100,50,50]); translate([5,5,5]) cube([90,40,50]); // Ecke ausschneiden für // Scharnier #translate([5,45,40]) cube([90,5,10]); // Ecke ausschneiden für den // zugeklappten Deckel #translate([5,0,45]) cube([90,5,5]); } } module deckel(){ difference(){ translate([5+1,0,0]) cube([90-2,50,5]); // Auch hier zwei Stücke abschneiden // für das Scharnier translate([0,0,0]) cube([10,10,10]); translate([90,0,0]) cube([10,10,10]); } } translate([0,0,-50]) kiste(); translate([0,50-5,-5]) deckel(); translate([5,50-5,-5]) scharnier();