difference() { translate([0, 0, 2]) cube(30, true); translate([0, 0, 2]) cube([25, 25, 31], true); translate([0, 0, 2]) cube([25, 31, 25], true); translate([0, 0, 2]) cube([31, 20, 28], true); } union(){ rotate([50, 0, 0]) translate ([5, 0, 1.5]) difference() { translate([15, 0, 0]) cube(30, true); translate([15, 0, 0]) cube([25, 25, 31], true); translate([15, 0, 0]) cube([25, 31, 25], true); translate([15, 0, 0]) cube([31, 20, 28], true); } }