$fn = 60; module base() { difference() { square([146, 101.5]); // translate([0, 101.5/2]) circle(48.5/2); // translate([146, 101.5/2]) circle(48.5/2); translate([3.3+68/2, 7.75 - 27.5/2]) circle(27.5/2); translate([3.3+68+3.4+68/2, 7.75 - 27.5/2]) circle(27.5/2); translate([3.3+68/2, 101.5 - 7.75 + 27.5/2]) circle(27.5/2); translate([3.3+68+3.4+68/2, 101.5 - 7.75 + 27.5/2]) circle(27.5/2); } } minkowski() { difference() { linear_extrude(29) minkowski(convexity = 2) { offset(-4) base(); circle(4); } translate([3.3, 2.75, 1]) linear_extrude(35) //minkowski(convexity = 2) { //offset(-4) square([68, 96]); //circle(4); } translate([3.3+68+3.4, 2.75, 1]) linear_extrude(35) //minkowski(convexity = 2) { //offset(-4) square([68, 96]); //circle(4); } // translate([146/2, 101.5/2, -1]) cylinder(35,r=48.5/2); } translate([1,1,0]) cylinder(1, 1, 0); }