phases = 3; stator_diameter = 22; stator_thickness = 7; $fn=360; coils = phases * 4; coil_width = 2; coil_length = 4.5; stator_t_width=1; stator_t_length=.8; bearing_diameter= 9; stator(); echo("test"); module stator(){ intersection(){ for(i = [1 : coils]){ rotate([0,0,i * 360/coils]) translate([-coil_width/2,(stator_diameter/2)-(coil_length+stator_t_length),0]) coil_leg(); } cylinder(h=stator_thickness, d=stator_diameter,center=true); } difference(){ cylinder(h=stator_thickness, d=(stator_diameter)-2*(coil_length+stator_t_length), center=true); cylinder(h=stator_thickness, d=bearing_diameter, center=true); } } module coil_leg(){ linear_extrude(height=stator_thickness, center=true) polygon(points = [ [0,-.1], [0, coil_length], [0-stator_t_width,coil_length], [0-stator_t_width,coil_length + stator_t_length], [coil_width+stator_t_width, coil_length+stator_t_length], [coil_width+stator_t_width, coil_length], [coil_width, coil_length], [coil_width,-.1] ]); }