chiark / gitweb /
maglite-holder: compute scaling and centre translation factor from fig
[reprap-play.git] / maglite-holder.scad
index e6bfe32c666eff4475d50a9e7adcc128c82418b6..459b1df45adc21ced05c43d05f08d160aff3ad92 100644 (file)
@@ -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);
     }