X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=cable-splice-clamp.scad;h=cd310bf862fca12885f956e2e70ca35bfc13fadd;hb=2898a43cc8a80c7aa5a79e36a502ffc4c34511a9;hp=b1f6876979f7afd2fd6256a722e05a4c2fac545a;hpb=2e81016db65692fd06fd31351ea8df75c2e51c72;p=reprap-play.git diff --git a/cable-splice-clamp.scad b/cable-splice-clamp.scad index b1f6876..cd310bf 100644 --- a/cable-splice-clamp.scad +++ b/cable-splice-clamp.scad @@ -6,13 +6,15 @@ cable_mindia = 6; wallmin = 1; wall = 2; -delta_ellipse = 0.5; +delta_ellipse = 0.45; // calculated outerdia = cable_maxdia / cos(30) + wall*2; delta_shift = 1 - delta_ellipse; +delta_shift_gap = (cable_maxdia-cable_mindia) * delta_shift; + module CrossSection(plus=0) { difference(){ for (dx = [-plus, 0, plus]) @@ -21,14 +23,28 @@ module CrossSection(plus=0) { scale([cable_maxdia, cable_maxdia * delta_shift + cable_mindia * delta_ellipse]) - circle(r= 0.5, $fn=30); + circle(r= sqrt(0.5) * delta_shift + 0.5 * delta_ellipse, $fn=4); - square(center=true, [40, (cable_maxdia-cable_mindia) * delta_shift]); + square(center=true, [40, delta_shift_gap]); } } -linear_extrude(height=20) - CrossSection(0); +module CrossSectionDemo(){ ////toplevel + color("blue"){ + translate([0, delta_shift_gap/2, 0]){ + difference(){ + circle(r = cable_maxdia/2, $fn=20); + circle(r = cable_mindia/2, $fn=20); + } + } + } + + linear_extrude(height=20) + CrossSection(0); + + color("red") + linear_extrude(height=1) + CrossSection(2); +} -linear_extrude(height=1) - CrossSection(2); +CrossSectionDemo();