From: Ian Jackson Date: Tue, 9 Feb 2016 01:40:25 +0000 (+0000) Subject: cable-splice-clamp: demo; geometry is a bit pants but seems nearly right for many... X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=commitdiff_plain;h=2898a43cc8a80c7aa5a79e36a502ffc4c34511a9 cable-splice-clamp: demo; geometry is a bit pants but seems nearly right for many sane parameters --- 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();