X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=maglite-holder.scad;h=9aed425a551bf5688ae807ccd50e51cda351a17b;hp=459b1df45adc21ced05c43d05f08d160aff3ad92;hb=f1c10228aa61207903486c31b4bc84d59ce0ff0c;hpb=7e1c398f4bafff2728fb064412f2761182dec3cf diff --git a/maglite-holder.scad b/maglite-holder.scad index 459b1df..9aed425 100644 --- a/maglite-holder.scad +++ b/maglite-holder.scad @@ -24,16 +24,22 @@ brace = [ 40, 20, 20 ]; hole_dia = 4 + 0.5; hole_slot = 5; -slop = 2; // total, not each side +movement_extra_angle = 5; + +slop = 4; // 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; +miniature = 1; // can adjust this to get commitid size right and rescale *Print + +$fa=5; // calculated +include + torch_dxf_scale = [ (torch_big_dia - torch_lit_dia) / (-(torch_min_xcoord_fig_cm - torch_smm_xcoord_fig_cm) * 10 * 2), @@ -92,17 +98,22 @@ module ScrewHole(y, rot) { } module TorchMovement(){ - // xxx needs torch increasing for slop translate([0, -torch_out, 0]) { translate([0, 0, -torch_recess]) Torch(); - rotate([90,0,0]) - linear_extrude(height= block_out) - projection() rotate([-90,0,0]) Torch(); + for (as=[-1,+1]) { + rotate([0,0, as*movement_extra_angle]) + rotate([90,0,0]) + linear_extrude(height= block_out) + projection() rotate([-90,0,0]) Torch(); + } } } -module Bracket(){ +module Bracket(){ ////toplevel + cid_w = stem_width * .75; + hole_near = hole_slot + hole_dia; + difference(){ mirror([0,1,0]) { translate([-stem_width/2, 0, -stem_len]) @@ -116,6 +127,11 @@ module Bracket(){ } ScrewHole(holes[0], 90); ScrewHole(holes[1], 0); + translate([-cid_w/2, 0, above - holes[0] - hole_near]) + rotate([-90,0,0]) + scale([miniature, miniature, 1]) + Commitid_BestCount([cid_w, holes[1]-holes[0] - hole_near*2] + / miniature); } difference(){ mirror([0,1,0]) @@ -125,7 +141,24 @@ module Bracket(){ } } -module Demo(){ +module BracketPrint(){ ////toplevel + scale(1/miniature) + rotate([-90,0,0]) + Bracket(); +} + +module TestTorchPrint(){ ////toplevel + scale(1/miniature) + intersection(){ + translate([0,0, torch_lit_dia / 2 / sqrt(2)]) + rotate([-90,0,0]) + Torch(); + translate([-100, -torch_tot_len*2, 0]) + cube([200, torch_tot_len*4, 200]); + } +} + +module Demo(){ ////toplevel color("red") translate([0, -torch_out, 0]) TorchOrig(); @@ -135,5 +168,6 @@ module Demo(){ Bracket(); } -Demo(); - +//Demo(); +//BracketPrint(); +//TestTorchPrint();