summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--fanduct.scad17
1 files changed, 12 insertions, 5 deletions
diff --git a/fanduct.scad b/fanduct.scad
index 75a3bb1..7a9e205 100644
--- a/fanduct.scad
+++ b/fanduct.scad
@@ -22,9 +22,10 @@ jet_angle = 60-2; // angular width of the jet
22 22
23 inlet_w = 12.5; // inlet width 23 inlet_w = 12.5; // inlet width
24 inlet_h = 17; // inlet height 24 inlet_h = 17; // inlet height
25 inlet_l = 7; // inlet length of protrusion (or depth of intrusion:)) 25 inlet_short_l = 7;// inlet length of protrusion (or depth of intrusion:))
26 inlet_away = 15;// how far away inlet is 26 inlet_away = 15;// how far away inlet is
27 27
28inlet_long_l = inlet_short_l+inlet_h;
28hotend_clearance = heater_clearance; 29hotend_clearance = heater_clearance;
29 30
30 snapper_d = 8; snapper_overlap=0.2;// snip snap 31 snapper_d = 8; snapper_overlap=0.2;// snip snap
@@ -188,7 +189,13 @@ module fanduct(type=type,ductshape=ductshape) {
188 } 189 }
189 if(what=="in") { 190 if(what=="in") {
190 placeit() translate([0,-inlet_w/2,0]) { 191 placeit() translate([0,-inlet_w/2,0]) {
191 cube(size=[inlet_h,inlet_w,inlet_l+fanduct_shell]); 192 difference() {
193 cube(size=[inlet_h,inlet_w,inlet_long_l+fanduct_shell]);
194 translate([inlet_h+fanduct_shell,0,inlet_long_l+fanduct_shell])
195 rotate([-90,0,0])
196 translate([0,0,-1])
197 cylinder(r=inlet_h,h=inlet_w+2*fanduct_shell+2,$fn=inlet_h*4);
198 }
192 // supports 199 // supports
193 for(i=[-1,0,1]) 200 for(i=[-1,0,1])
194 translate([-fanduct_shell, 201 translate([-fanduct_shell,
@@ -196,7 +203,7 @@ module fanduct(type=type,ductshape=ductshape) {
196 -inlet_away-fanduct_w/2]) 203 -inlet_away-fanduct_w/2])
197 cube(size=[fanduct_shell, 204 cube(size=[fanduct_shell,
198 extrusion_width, 205 extrusion_width,
199 inlet_l+fanduct_shell+inlet_away+fanduct_w/2]); 206 inlet_long_l+fanduct_shell+inlet_away+fanduct_w/2]);
200 } 207 }
201 hull() { 208 hull() {
202 placeit() translate([-fanduct_shell,-inlet_w/2-fanduct_shell,0]) 209 placeit() translate([-fanduct_shell,-inlet_w/2-fanduct_shell,0])
@@ -207,7 +214,7 @@ module fanduct(type=type,ductshape=ductshape) {
207 } 214 }
208 }else if(what=="out") { 215 }else if(what=="out") {
209 placeit() translate([fanduct_shell,-inlet_w/2+fanduct_shell,0]) 216 placeit() translate([fanduct_shell,-inlet_w/2+fanduct_shell,0])
210 cube(size=[inlet_h-2*fanduct_shell,inlet_w-2*fanduct_shell,inlet_l+fanduct_shell+1]); 217 cube(size=[inlet_h-2*fanduct_shell,inlet_w-2*fanduct_shell,inlet_long_l+fanduct_shell+1]);
211 hull() { 218 hull() {
212 placeit() translate([fanduct_shell,-inlet_w/2+fanduct_shell,0]) 219 placeit() translate([fanduct_shell,-inlet_w/2+fanduct_shell,0])
213 cube(size=[inlet_h-2*fanduct_shell,inlet_w-2*fanduct_shell,fanduct_shell]); 220 cube(size=[inlet_h-2*fanduct_shell,inlet_w-2*fanduct_shell,fanduct_shell]);
@@ -254,7 +261,7 @@ module fanduct(type=type,ductshape=ductshape) {
254 } 261 }
255} 262}
256 263
257view="vcut"; // hcut|vcut|* 264view="*"; // hcut|vcut|*
258 265
259hinfinity=4*(fanduct_ir+fanduct_shell*2+fanduct_w+inlet_away); 266hinfinity=4*(fanduct_ir+fanduct_shell*2+fanduct_w+inlet_away);
260vinfinity=2*(fanduct_shell*2+fanduct_h+inlet_h); 267vinfinity=2*(fanduct_shell*2+fanduct_h+inlet_h);