X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=led-panel-ceiling-bracket.scad;h=8f39a5bf0e6d06c87e54e2d2e3f0f3ac4674c043;hp=a2e05ffa42310011065e7b54ca2672df8b1869a8;hb=72c35c0236348bc504f6490e2bf9e5f67c1fd522;hpb=62c4d6553d9fed4948858e06f3912aed1fa4bf65 diff --git a/led-panel-ceiling-bracket.scad b/led-panel-ceiling-bracket.scad index a2e05ff..8f39a5b 100644 --- a/led-panel-ceiling-bracket.scad +++ b/led-panel-ceiling-bracket.scad @@ -4,25 +4,53 @@ holespc = 20; len = 50; width = 20; -backspc = 10; +backspc = 8; +extra_height = 2; light_height = 12.5; hole_from_back = 7.2 + 0.5; hole_dia = 3.5 + 0.5; +bolthead_dia = 7 + 1.0; +bolthead_depth = 5 + 20 - 12 + 2.7/2; -height = light_height + backspc; +plasfix_dia = 4.5 + 0.5 + 1.1; +plasfix_head = 8.7 + 0.5 + 1.1; +plasfix_headdep = plasfix_dia; +plasfix_sink = 8; + +height = light_height + backspc + extra_height; + +octagon_fudge = 1/cos(22.5); + +echo("remain", width - bolthead_depth); module Bracket(){ difference(){ - translate([-len/2, 0,0]) + translate([-len/2, 0, 0]) cube([len, width, height]); for (xsgn=[-1,+1]) { - translate([xsgn * holespc/2, -1, light_height - hole_from_back]) { - rotate([-90,0,0]) - rotate([0,0,360/8/2]) - cylinder(r=hole_dia/2, h=50, $fn=8); + translate([xsgn * holespc/2, -1, + light_height - hole_from_back + extra_height]) { + rotate([-90,0,0]) { + rotate([0,0,360/8/2]) { + cylinder(r=bolthead_dia/2 * octagon_fudge, + h= bolthead_depth +1, $fn=8); + cylinder(r=hole_dia/2 * octagon_fudge, + h=50, $fn=8); + } + } } } + translate([0, width/2, 0]) { + cylinder(r= plasfix_dia/2, h=50, $fn=20); + translate([0,0,-1]) + cylinder(r= plasfix_head/2, h= plasfix_sink + 1, $fn=20); + } } } -Bracket(); +module BracketPrint(){ + rotate([0,180,0]) + Bracket(); +} + +BracketPrint();