-rw-r--r-- | another.scad | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/another.scad b/another.scad index f4e8904..23243d9 100644 --- a/another.scad +++ b/another.scad @@ -94,2 +94,11 @@ module the_extruder( + module teardrop(r,d,h,center=false,angle=45) { + dd = d ? d : (2*r); + $fn = dd*fnd; + cylinder(d=dd,h=h,center=center); + if(angle>0) translate([0,0,center?-h/2:0]) + rotate([0,0,angle]) + cube(size=[d/2,d/2,h]); + } + module mirrorleft() { @@ -166,10 +175,7 @@ module the_extruder( // filament path - place_idler() { - translate([-idler_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) { - cylinder(d=filament_path_d,h=3*gearbox_d,center=true,$fn=30); - translate([0,-filament_path_d/2/sqrt(2),0]) rotate([0,0,45]) - cube(size=[filament_path_d/2,filament_path_d/2,3*gearbox_d],center=true); - }//rotate translate - translate([-idler_d/2-idler_filament_offset,0,0]) - rotate([90,0,0]) + place_idler() + translate([-idler_d/2-idler_filament_offset,0,0]) + rotate([90,0,0]) { + mirror([0,1,0]) + teardrop(d=filament_path_d,h=3*gearbox_d,center=true); translate([0,0, @@ -181,5 +187,5 @@ module the_extruder( cylinder(d=2*filament_path_d,h=lsd,$fn=2*filament_path_d*fnd); - } - }//place_idler - + }//translate + }//rotate translate place_idler + // idler space and mounting hole @@ -312,6 +318,3 @@ module the_extruder( pushfit(pf); - cylinder(d=filament_guide_d,h=gearbox_d,center=true,$fn=fnd*filament_guide_d); - translate([0,-filament_guide_d/2/sqrt(2),0]) - rotate([0,0,45]) - cube(size=[filament_guide_d/2,filament_guide_d/2,gearbox_d],center=true); + mirror([0,1,0]) teardrop(d=filament_guide_d,h=gearbox_d,center=true); }//rotate translate rotate translate rotate translate |