inner_diam = 20; hub_diam = 32.28; arm_width = 4.3; head_width = 7.5; head_length = 5.7; outer_diam = 64; height = 3.175; /*module full_model() {*/ /*difference() {*/ /*cylinder(r=outer_diam/2, h=height);*/ /*cylinder(r=inner_diam/2, h=height);*/ /*}*/ /*}*/ module arm() { translate([0, -(outer_diam/2 - hub_diam/2)/2, 0]) union() { cube([arm_width, 50.8/2, height]); translate([0, 50.8/2 - head_length/2, 0]) cube([head_width, head_length, height]); } } module full_model() { // center hub difference() { cylinder(r=hub_diam/2, h=height); cylinder(r=inner_diam/2, h=height); } for(i = [0:120:360]) { rotate([0, 0, i]) { translate([-hub_diam/2, hub_diam/2 - arm_width*1.5, 0]) arm(); } } } *full_model(); *color("green") cylinder(r=50.8/2, h=1); projection(cut=true) full_model();