union() { difference() { cylinder(h=30, r=25, $fn=300); translate([0, 0, -5]) cylinder(h=40, r=23, $fn=300); } difference() { union() { translate([0, 0, 30]) cylinder(h=3, r=30, $fn=300); color("green") translate([-22, -12, 31]) cube([44, 24, 5]); } color("red") translate([-20, -10, 25]) cube([40, 20, 15]); } }