$fn=100; difference() { cylinder(h=5, d=11); translate([0, 0, -0.1]) cylinder(h=5.1, d=6); } cylinder(h=5, d=1); color("blue") translate([-3, 1.5, 0]) cube([6, 2, 5]); color("red") translate([0, 0, 5]) cylinder(h=1, d=15); translate([0, 0, 6]) cylinder(h=18, d1=7, d2=6); color("green") union() { for(r = [0 : 15 : 345]) { rotate([0, 0, r]) translate([0, 3.5, 6]) rotate([1.6, 0, 0]) scale([1.2, 1, 1]) cylinder(h=18, d=0.5); } } color("teal") translate([0, 0, 24]) scale([1, 1, 0.15]) sphere(d=6.5); color("pink") difference() { translate([0, 0, 3]) cylinder(h=2, r=7.5); translate([0, 0, 3]) torus(r1=5.5, r2=9.5); translate([0, 0, -0.1]) cylinder(h=5.1, d=6); } module torus(r1, r2) { r=(r2-r1)/2; rotate_extrude() translate([r1+r,0,0]) circle(r); }