From 7e1c398f4bafff2728fb064412f2761182dec3cf Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Wed, 1 Feb 2017 21:35:29 +0000 Subject: [PATCH] maglite-holder: compute scaling and centre translation factor from fig --- maglite-holder-torch.fig | 2 +- maglite-holder.scad | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/maglite-holder-torch.fig b/maglite-holder-torch.fig index 904cea3..9c25deb 100644 --- a/maglite-holder-torch.fig +++ b/maglite-holder-torch.fig @@ -16,4 +16,4 @@ Single 2 2 0 1 2 1 75 -1 -1 0.000 0 0 -1 0 0 5 -859 13 857 13 857 -795 -859 -795 -859 13 2 3 0 1 1 1 50 -1 -1 0.000 0 0 -1 0 0 6 - -1201 1100 -1204 2667 -116 1204 -74 -148 -846 17 -1201 1100 + -1201 1100 -1204 2667 -231 1187 -225 -159 -846 17 -1201 1100 diff --git a/maglite-holder.scad b/maglite-holder.scad index e6bfe32..459b1df 100644 --- a/maglite-holder.scad +++ b/maglite-holder.scad @@ -28,13 +28,15 @@ slop = 2; // total, not each side torch_min_xcoord_fig_cm = -2.7; // coordinates of bottom left of curve torch_min_ycoord_fig_cm = -5.9; // & big part in fig file. mid top is origin +torch_smm_xcoord_fig_cm = -1.9; // x coord of lhs of narrow part -$fa=5; +//$fa=5; // calculated torch_dxf_scale = - [ torch_big_dia / (-torch_min_xcoord_fig_cm * 10 * 2), + [ (torch_big_dia - torch_lit_dia) / + (-(torch_min_xcoord_fig_cm - torch_smm_xcoord_fig_cm) * 10 * 2), torch_big_len / (-torch_min_ycoord_fig_cm * 10) ]; echo(torch_dxf_scale); @@ -57,8 +59,10 @@ module TorchOrig(){ mirror([0,0,1]){ hull(){ rotate_extrude() + translate([-torch_lit_dia/2, 0]) scale(torch_dxf_scale) translate(dxf_off) + translate([-torch_smm_xcoord_fig_cm * 10, 0]) import(file="maglite-holder-torch-curve.dxf", convexity=10, center=true); } -- 2.30.2