From 66ea8b66c75aeb5690d85211f40a557b15cf7ad3 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 7 Feb 2021 23:07:32 +0000 Subject: [PATCH] powerbank-bike-clamp: refactor for clamp width nfc Signed-off-by: Ian Jackson --- powerbank-bike-clamp.scad | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/powerbank-bike-clamp.scad b/powerbank-bike-clamp.scad index f72078d..076538b 100644 --- a/powerbank-bike-clamp.scad +++ b/powerbank-bike-clamp.scad @@ -70,13 +70,8 @@ bank_recess_dx = minor_wall_min; pspt_to_mm = 25.4 / 72; -hinge_stride = (clamp_width + hinge_gap_z) / hinge_lobes; - main_r = tube_dia/2 + main_th; -hinge_outer_r = hinge_around + hinge_pin/2; -hinge_y = tube_dia/2 + hinge_outer_r; - screw_max_y_lhs = -main_r -screw_nut_across/2; screw_max_y_rhs = -main_r -knob_behind_across/2; @@ -94,6 +89,13 @@ brace_total_len = brace_len + main_th; brace_ctrs_y = [ straps_y[0] - (brace_r + strap_r/2), straps_y[1] + (brace_r + strap_r/2) ]; +clamp_width_actual = max(clamp_width, 0); + +hinge_stride = (clamp_width_actual + hinge_gap_z) / hinge_lobes; + +hinge_outer_r = hinge_around + hinge_pin/2; +hinge_y = tube_dia/2 + hinge_outer_r; + echo(bot_y); module TubePlan(){ circle(r = tube_dia/2); } @@ -118,7 +120,7 @@ module TubeClampLeftPlan(){ } module TubeClampLeft() { ////toplevel - linextr(-clamp_width/2, clamp_width/2) + linextr(-clamp_width_actual/2, clamp_width_actual/2) TubeClampLeftPlan(); } @@ -163,7 +165,7 @@ module Screws(){ module SomeClamp(hinge_alt=false){ difference(){ - linextr(-clamp_width/2, clamp_width/2) + linextr(-clamp_width_actual/2, clamp_width_actual/2) children(0); Screws(); @@ -171,7 +173,7 @@ module SomeClamp(hinge_alt=false){ for (i=[0 : hinge_lobes-1]) { translate([0, hinge_y, - -clamp_width/2 + i * hinge_stride + -clamp_width_actual/2 + i * hinge_stride + (hinge_alt ? hinge_stride/2 : 0) ]) linextr(-hinge_gap_z, hinge_stride/2) -- 2.30.2