summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--fanduct.scad6
1 files changed, 4 insertions, 2 deletions
diff --git a/fanduct.scad b/fanduct.scad
index efc6a19..b1c9bd8 100644
--- a/fanduct.scad
+++ b/fanduct.scad
@@ -345,27 +345,29 @@ module fanduct(type=type,ductshape=ductshape,dual=dual) {
345 hull() { 345 hull() {
346 intersection() { 346 intersection() {
347 translate([md-fanduct_w/2,-jww/2+fanduct_shell,fanduct_shell]) 347 translate([md-fanduct_w/2,-jww/2+fanduct_shell,fanduct_shell])
348 cube(size=[fanduct_w/2,jww-2*fanduct_shell,od-2*fanduct_shell]); 348 cube(size=[fanduct_w/2,jww-2*fanduct_shell,od-2*fanduct_shell]);
349 rotate([0,0,-a]) translate([0,-nozzles_apart/2,0]) duct(what=what); 349 rotate([0,0,-a]) translate([0,-nozzles_apart/2,0]) duct(what=what);
350 } // intersection 350 } // intersection
351 translate([0,0,-fanduct_elevation]) sphere(r=.5); 351 translate([0,0,-fanduct_elevation]) sphere(r=.5);
352 } // hull 352 } // hull
353 } // what=="out" 353 } // what=="out"
354 if(what=="in") { 354 if(what=="in") {
355 translate([0,0,-fanduct_elevation/2-1+epsilon]) 355 translate([0,0,-fanduct_elevation/2-1+epsilon])
356 cube(size=[2*(fanduct_ir+2*fanduct_shell+fanduct_w+1),nozzles_apart+2*(fanduct_ir+2*fanduct_shell+fanduct_w+1),fanduct_elevation+2],center=true); 356 cube(size=[2*(fanduct_ir+2*fanduct_shell+fanduct_w+1),nozzles_apart+2*(fanduct_ir+2*fanduct_shell+fanduct_w+1),fanduct_elevation+2],center=true);
357 cfn=4;
358 hc = hotend_clearance/cos(180/cfn);
357 for(my=[0,1]) mirror([0,my,0]) 359 for(my=[0,1]) mirror([0,my,0])
358 translate([0,nozzles_apart/2,-hotend_clearance]) 360 translate([0,nozzles_apart/2,-hc])
359 cylinder(r1=hotend_clearance*2,r2=0,h=hotend_clearance*2,$fn=4); 361 cylinder(r1=hc*2,r2=0,h=hc*2,$fn=cfn);
360 } 362 }
361 } // difference 363 } // difference
362 } 364 }
363 365
364 module dual_simple(what=what) { 366 module dual_simple(what=what) {
365 for(my=[0:1]) mirror([0,my,0]) if(what=="in") { 367 for(my=[0:1]) mirror([0,my,0]) if(what=="in") {
366 difference() { 368 difference() {
367 hull() { 369 hull() {
368 translate([0,nozzles_apart/2+fanduct_ir+fanduct_shell+fanduct_w/2,0]) 370 translate([0,nozzles_apart/2+fanduct_ir+fanduct_shell+fanduct_w/2,0])
369 cylinder(d=fanduct_w+2*fanduct_shell,h=fanduct_h*2/3+2*fanduct_shell); 371 cylinder(d=fanduct_w+2*fanduct_shell,h=fanduct_h*2/3+2*fanduct_shell);
370 translate([0,nozzles_apart/2,-fanduct_elevation+fanduct_blowtarget]) 372 translate([0,nozzles_apart/2,-fanduct_elevation+fanduct_blowtarget])
371 rotate([0,90,0]) cylinder(r=.5,h=fanduct_w*2,center=true); 373 rotate([0,90,0]) cylinder(r=.5,h=fanduct_w*2,center=true);