// 2x2 Lego Cube // OpenSCAD versiondifference() { cube([10,10,6]); translate([1,1,-1]) { cube([8,8,6]); }}translate([2.5,2.5,6]) { cylinder(1,1.5,1.5, $fn=20);}translate([7.5,2.5,6]) { cylinder(1,1.5,1.5, $fn=20);}translate([2.5,7.5,6]) { cylinder(1,1.5,1.5, $fn=20);}translate([7.5,7.5,6]) { cylinder(1,1.5,1.5, $fn=20);}translate([5,5,0]) { difference() { cylinder(5,2.035,2.035, $fn=20); translate([0,0,-1]) { cylinder(6,1.5,1.5, $fn=20); } } }// 2x2 Lego Cube // OpenJSCAD versionfunction main() { return union ( difference ( cube([10,10,6]), translate([1,1,-1], cube([8,8,6]) ) ), translate([2.5,2.5,5], cylinder({h:2,r:1.5}) ), translate([7.5,7.5,5], cylinder({h:2,r:1.5}) ), translate([2.5,7.5,5], cylinder({h:2,r:1.5}) ), translate([7.5,2.5,5], cylinder({h:2,r:1.5}) ), translate([5,5,0], difference( cylinder({h:6,r:2.035}), cylinder({h:6,r:1.5}) ) ) )}