SPHERE_RESOLUTON=36; difference() { // rounded cube, die "body" intersection() { cube([10, 10, 10], center=true); sphere(8, $fn=SPHERE_RESOLUTON); } // 1 rotate([0, 0, 0]) { translate([5, 0, 0]) { sphere(1, $fn=SPHERE_RESOLUTON); } } // 6 rotate([0, 0, 180]) { translate([5, 0, 0]) { translate([0, 3, 0]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, 0]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, 3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, 3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); } } // 2 rotate([0, 0, 90]) { translate([5, 0, 0]) { translate([0, 3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); } } // 5 rotate([0, 0, 270]) { translate([5, 0, 0]) { sphere(1, $fn=SPHERE_RESOLUTON); translate([0, 3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, 3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); } } // 3 rotate([0, 90, 0]) { translate([5, 0, 0]) { sphere(1, $fn=SPHERE_RESOLUTON); translate([0, 3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); } } // 4 rotate([0, 270, 0]) { translate([5, 0, 0]) { translate([0, 3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, 3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, 3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); translate([0, -3, -3]) sphere(1, $fn=SPHERE_RESOLUTON); } } }