summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--multiswitch.scad7
1 files changed, 5 insertions, 2 deletions
diff --git a/multiswitch.scad b/multiswitch.scad
index 75d95e4..ae85ee3 100644
--- a/multiswitch.scad
+++ b/multiswitch.scad
@@ -1,20 +1,23 @@
layer_height=.2; extrusion_width=.5;
epsilon=.01;
+draft = true;
use <pushfittery.scad>;
include <pushfit_data.scad>;
module multiswitch(
liner_od = 4, liner_id = 2,
angle = 15, // to the vertical (output) axis
inputs = 4,
minshell = 2*extrusion_width,
shell = 5*extrusion_width,
pf = pushfit_embeddest,
+
debug = 0, // how many inputs -1 the debug cutout spans
+ draft = draft,
print = true,
liner_d_tolerance=.2
) {
fnd = 4*PI; fnr = 2*fnd;
@@ -72,22 +75,22 @@ module multiswitch(
foroutput()
translate([0,0,l_output+pushfit_h]) {
cylinder(d=pushfit_d+shell*2,h=epsilon,$fn=pushfit_d*fnd);
}
}
forinputs() {
- translate([0,0,l_input]) pushfit(pf);
+ translate([0,0,l_input]) pushfit(pf,draft=draft);
translate([0,0,l_narrow]) {
cylinder(d=lod,h=l_input+1-l_narrow,$fn=lod*fnd);
mirror([0,0,1]) translate([0,0,-epsilon])
cylinder(d1=(liner_id+lod)/2,d2=liner_id,h=liner_id,$fn=lod*fnd);
}
cylinder(d=liner_id,h=l_input+epsilon,$fn=liner_id*fnd);
}
foroutput() {
- translate([0,0,l_output]) pushfit(pf);
+ translate([0,0,l_output]) pushfit(pf,draft=draft);
cylinder(d=lod,h=l_output+1,$fn=lod*fnd);
}
hull() {
forinputs()
translate([0,0,l_fork]) cylinder(d=liner_id,h=epsilon,$fn=liner_id*fnd);
foroutput()