use ; use ; use ; $fn=75; module roundcube(x,y,z,rad=5) { hull() { translate([rad,rad,0]) cylinder(r=rad,h=z); translate([x-rad,rad,0]) cylinder(r=rad,h=z); translate([x-rad,y-rad,0]) cylinder(r=rad,h=z); translate([rad,y-rad,0]) cylinder(r=rad,h=z); } } module body() { roundcube(40,40,10); } difference() { body(); #translate([(30 - getBearingLength())/2,20,0]) bearingHalfHole(80); hholes(); bigholes(); } //use ; //translate([0,0,-10]) main(); module hholes() { holes(11,false, true); } module bigholes() { translate([15,7.5,0]) rotate([0,-90,0]) { hull() { M3Hole(11); translate([0,-4,0]) M3Hole(11); } hull() { M3Head(5); translate([0,-4,0]) M3Head(5); } }; translate([35,7.5,0]) rotate([0,-90,0]) { hull() { M3Hole(11); translate([0,-4,0]) M3Hole(11); } hull() { M3Head(5); translate([0,-4,0]) M3Head(5); } }; }