// Wheel radius (approximated) r = 20; // Number of pins pins = 23; // Wheel tickness thickness = 2; // Hub tickness max_thickness = 3; // Axle radius axle_r = 3; difference() { union() { for (i = [0:pins]) { rotate([0, 0, i*360/pins]) translate([0, -0.5, 0]) cube([r, 1, 2]); } cylinder(r=r*0.9, h=thickness); cylinder(r=axle_r*2, h=max_thickness); } cylinder(r=axle_r, h=max_thickness*2+1, center=true, $fn=30); }