chiark
/
gitweb
/
~ianmdlvl
/
reprap-play.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
maglite-holder: compute scaling and centre translation factor from fig
[reprap-play.git]
/
maglite-holder.scad
diff --git
a/maglite-holder.scad
b/maglite-holder.scad
index 31c92201e839cf1bcea36a7d228359dbebf57410..459b1df45adc21ced05c43d05f08d160aff3ad92 100644
(file)
--- a/
maglite-holder.scad
+++ b/
maglite-holder.scad
@@
-26,10
+26,21
@@
hole_slot = 5;
slop = 2; // total, not each side
slop = 2; // total, not each side
-$fa=5;
+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;
// calculated
// calculated
+torch_dxf_scale =
+ [ (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);
+
above = torch_big_len + torch_clear + torch_clear_below;
holes = [ 172, 265 ];
above = torch_big_len + torch_clear + torch_clear_below;
holes = [ 172, 265 ];
@@
-48,7
+59,10
@@
module TorchOrig(){
mirror([0,0,1]){
hull(){
rotate_extrude()
mirror([0,0,1]){
hull(){
rotate_extrude()
+ translate([-torch_lit_dia/2, 0])
+ scale(torch_dxf_scale)
translate(dxf_off)
translate(dxf_off)
+ translate([-torch_smm_xcoord_fig_cm * 10, 0])
import(file="maglite-holder-torch-curve.dxf",
convexity=10, center=true);
}
import(file="maglite-holder-torch-curve.dxf",
convexity=10, center=true);
}
@@
-112,7
+126,12
@@
module Bracket(){
}
module Demo(){
}
module Demo(){
- %TorchOrig();
+ color("red")
+ translate([0, -torch_out, 0])
+ TorchOrig();
+ color("blue")
+ translate([0, -torch_out, above])
+ cylinder(r=torch_big_dia/2, h=1);
Bracket();
}
Bracket();
}