From 9d2fa0d24b2aef087ea465bbd980f3e3fbfa5595 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Tue, 9 Feb 2016 02:02:03 +0000 Subject: [PATCH] cable-splice-clamp: wip --- cable-splice-clamp.scad | 42 +++++++++++++++++++++++++++++++++++------ 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/cable-splice-clamp.scad b/cable-splice-clamp.scad index cd310bf..851b5f6 100644 --- a/cable-splice-clamp.scad +++ b/cable-splice-clamp.scad @@ -2,15 +2,21 @@ cable_maxdia = 12; cable_mindia = 6; +strap_width = 4 + 0.5; +total_len = 70; -wallmin = 1; -wall = 2; +wallmin = 1.5; + +strap_count = 2; + +strap_wall_h = 1.5; +strap_wall_l = 2.0; delta_ellipse = 0.45; // calculated -outerdia = cable_maxdia / cos(30) + wall*2; +outerdia = cable_maxdia / cos(30) + wallmin*2; delta_shift = 1 - delta_ellipse; delta_shift_gap = (cable_maxdia-cable_mindia) * delta_shift; @@ -21,9 +27,14 @@ module CrossSection(plus=0) { translate([dx, 0]) circle(r= outerdia/2, $fn=6); - scale([cable_maxdia, - cable_maxdia * delta_shift + cable_mindia * delta_ellipse]) - circle(r= sqrt(0.5) * delta_shift + 0.5 * delta_ellipse, $fn=4); + intersection(){ + scale([cable_maxdia, + cable_maxdia * delta_shift + cable_mindia * delta_ellipse]) + circle(r= sqrt(0.5) * delta_shift + 0.5 * delta_ellipse, $fn=4); + circle(r= cable_maxdia/2 * sqrt(delta_shift) + + cable_mindia/2 * (1-sqrt(delta_shift)), + $fn=20); + } square(center=true, [40, delta_shift_gap]); } @@ -47,4 +58,23 @@ module CrossSectionDemo(){ ////toplevel CrossSection(2); } +module CompleteClamp(){ ////toplevel + linear_extrude(height=total_len) + CrossSection(); + + for (i=[0 : strap_count]){ + if (i*2 != strap_count) { + translate([0, 0, + total_len * (i + 0.5) / (strap_count + 1)]) + for (m=[0,1]){ + mirror([0,0,m]) + translate([0,0, strap_width/2]) + linear_extrude(height=strap_wall_l) + CrossSection(strap_wall_h); + } + } + } +} + CrossSectionDemo(); +//CompleteClamp(); -- 2.30.2