$fn = 100; difference() { union() { translate(v=[0, 0, 2.5]) { cylinder(h=5, d=61, center=true); } translate(v=[30.5, 0, 2.5]) { cylinder(h=5, d=12, center=true); } translate(v=[-30.5, 0, 2.5]) { cylinder(h=5, d=12, center=true); } translate(v=[0, 0, 40]) { cylinder(h=80, d=53, center=true); } } union() { translate(v=[0, 0, 45]) { cylinder(h=100, d=47, center=true); } translate(v=[31, 0, 2.5]) { cylinder(h=6, d=4, center=true); } translate(v=[-31, 0, 2.5]) { cylinder(h=6, d=4, center=true); } translate(v=[31, 0, 4.01]) { cylinder(h=2, d1=4, d2=7, center=true); } translate(v=[-31, 0, 4.01]) { cylinder(h=2, d1=4, d2=7, center=true); } translate(v=[0, -90, 86]) { sphere(r=100); } } }