-rw-r--r-- | another.scad | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/another.scad b/another.scad index 7e8a45f..342d70c 100644 --- a/another.scad +++ b/another.scad | |||
@@ -136,37 +136,49 @@ module the_extruder( | |||
136 | union() { | 136 | union() { |
137 | hull() { | 137 | hull() { |
138 | place_idler() | 138 | place_idler() |
139 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); | 139 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); |
140 | translate([mount_d/2,0,0]) | 140 | translate([mount_d/2,0,0]) |
141 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); | 141 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); |
142 | }//hull | 142 | }//hull |
143 | hull() { | 143 | hull() { |
144 | translate([mount_d/2,0,0]) | 144 | translate([mount_d/2,0,0]) |
145 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); | 145 | cylinder(d=lsd,h=lever_thickness,center=true,$fn=60); |
146 | translate([mount_d/2,-longwing,0]) rotate([0,90,0]) | 146 | translate([mount_d/2,-longwing,0]) rotate([0,90,0]) |
147 | cylinder(d=lever_thickness,h=lsd,center=true,$fn=60); | 147 | cylinder(d=lever_thickness,h=lsd,center=true,$fn=60); |
148 | }//hull | 148 | }//hull |
149 | }//union | 149 | }//union |
150 | 150 | ||
151 | // filament path | 151 | // filament path |
152 | place_idler() translate([-(idler_d+filament_path_d)/2,0,0]) rotate([90,0,0]) { | 152 | place_idler() { |
153 | cylinder(d=filament_path_d,h=3*gearbox_d,center=true,$fn=30); | 153 | translate([-(idler_d+filament_path_d)/2,0,0]) rotate([90,0,0]) { |
154 | translate([0,-filament_path_d/2/sqrt(2),0]) rotate([0,0,45]) | 154 | cylinder(d=filament_path_d,h=3*gearbox_d,center=true,$fn=30); |
155 | cube(size=[filament_path_d/2,filament_path_d/2,3*gearbox_d],center=true); | 155 | translate([0,-filament_path_d/2/sqrt(2),0]) rotate([0,0,45]) |
156 | } | 156 | cube(size=[filament_path_d/2,filament_path_d/2,3*gearbox_d],center=true); |
157 | }//rotate translate | ||
158 | translate([-(idler_d+filament_path_d)/2,0,0]) | ||
159 | rotate([90,0,0]) | ||
160 | translate([0,0, | ||
161 | sqrt(2)*(mount_d-pulley_d+filament_path_d+lsd)/2 | ||
162 | ]) { | ||
163 | cylinder(d1=filament_path_d,d2=2*filament_path_d, | ||
164 | h=filament_path_d,$fn=2*filament_path_d*fnd); | ||
165 | translate([0,0,filament_path_d-epsilon]) | ||
166 | cylinder(d=2*filament_path_d,h=lsd,$fn=2*filament_path_d*fnd); | ||
167 | } | ||
168 | }//place_idler | ||
157 | 169 | ||
158 | // idler space and mounting hole | 170 | // idler space and mounting hole |
159 | place_idler() { | 171 | place_idler() { |
160 | difference() { | 172 | difference() { |
161 | cylinder(d=idler_d+idler_clearance*2,h=idler_h+idler_v_tolerance,center=true,$fn=60); | 173 | cylinder(d=idler_d+idler_clearance*2,h=idler_h+idler_v_tolerance,center=true,$fn=60); |
162 | if(supports) for(y=[-lsd/2+extrusion_width:(lsd-2*extrusion_width)/3:lsd/2-extrusion_width]) | 174 | if(supports) for(y=[-lsd/2+extrusion_width:(lsd-2*extrusion_width)/3:lsd/2-extrusion_width]) |
163 | translate([-lsd/2-1,y-extrusion_width/2,-idler_h/2-idler_v_tolerance/2-1]) | 175 | translate([-lsd/2-1,y-extrusion_width/2,-idler_h/2-idler_v_tolerance/2-1]) |
164 | cube(size=[lsd+2,extrusion_width,idler_h+idler_v_tolerance+2]); | 176 | cube(size=[lsd+2,extrusion_width,idler_h+idler_v_tolerance+2]); |
165 | } | 177 | } |
166 | cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); | 178 | cylinder(d=idler_screw_d,h=lever_thickness+2,center=true,$fn=30); |
167 | translate([0,0,lever_thickness/2-idler_screwhead_h]) | 179 | translate([0,0,lever_thickness/2-idler_screwhead_h]) |
168 | cylinder(d=idler_screwhead_d,h=idler_screwhead_h+1,$fn=fnd*idler_screwhead_d); | 180 | cylinder(d=idler_screwhead_d,h=idler_screwhead_h+1,$fn=fnd*idler_screwhead_d); |
169 | } | 181 | } |
170 | // mounting screw hole | 182 | // mounting screw hole |
171 | translate([mount_d/2,0,0]) | 183 | translate([mount_d/2,0,0]) |
172 | cylinder(d=mount_screw_d+mount_screw_d_tolerance,h=lever_thickness+2,center=true,$fn=fnd*mount_screw_d); | 184 | cylinder(d=mount_screw_d+mount_screw_d_tolerance,h=lever_thickness+2,center=true,$fn=fnd*mount_screw_d); |