X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=xeno-drivebay-bracket.scad;h=1e5f4350e038aad58fa1e4a3ca3b63c3dcce4da5;hb=76b9f966490000208aac453d9426601365ccfe78;hp=4efb526150be9257751cc1276839750548ff5102;hpb=6247fb45ff798c44a0734717e71fdf316c8fb83e;p=reprap-play.git diff --git a/xeno-drivebay-bracket.scad b/xeno-drivebay-bracket.scad index 4efb526..1e5f435 100644 --- a/xeno-drivebay-bracket.scad +++ b/xeno-drivebay-bracket.scad @@ -1,25 +1,25 @@ // -*- C -*- -basel = 18; -basew = 22; +basel = 16; +basew = 24; baset = 4.0; wallt = 2.5; wallh = 42; -baseholesz = 4; -baseholeslot = 4.5; +baseholesz = 3.7; +baseholeslot = 6.5; baseholeslop = -0.5; -topl = 20; - holeslop = 0.5; webt = 2.5; -padt = webt; +pad = false; padw = 12; + +padt = webt; padl = padw; padholesz = 3.0; @@ -27,17 +27,17 @@ wallholeh = 6+14+2; wallholesz = 3.0; wallholeslot = 4.5; -walll = basel + webt + padl;; +walll = basel + webt + (pad ? padl : -0.1); -webw = min(basew, padw); +webw = min(basew, pad ? padw : padt); module slothole(sz, slot, thick, csunk=true, slop=holeslop) { hull(){ for (y = [-slot/2,slot/2]) { - translate([0,y,-0.05]) + translate([0,y,-0.15]) cylinder(r1=sz/2 + slop, r2=sz/2 + (csunk ? thick : 0) + slop, - h=thick+0.10); + h=thick+0.30); } } } @@ -52,6 +52,7 @@ module Bracket(){ } difference(){ + translate([0.1, 0.3, 0.1]) rotate([90,0,0]) { linear_extrude(height=wallt){ polygon([[0,0], @@ -80,11 +81,13 @@ module Bracket(){ } } - translate([basel+webt, -padw, wallh-padt]) { - difference(){ - cube([padl, padw, padt]); - translate([padl/2, padw/2, -1]) - cylinder(r=padholesz/2 + holeslop, h=padt+2); + if (pad) { + translate([basel+webt, -padw, wallh-padt]) { + difference(){ + cube([padl, padw, padt]); + translate([padl/2, padw/2, -1]) + cylinder(r=padholesz/2 + holeslop, h=padt+2); + } } } } @@ -97,6 +100,40 @@ module BracketL(){ ////toplevel mirror([1,0,0]) BracketR(); } +protinnerh = 37.5; +protinnerw = 53; +protd = 45; +protbaset = 4; +protwallt = 2; +protlidt = protwallt; +protwingd = 28; +protwingw = 23; + +module RearCableProtector(){ + for (x = [-protwallt, protinnerw]) { + translate([x, 0, 0]) { + cube([protwallt, protd, protinnerh+protlidt]); + } + } + translate([-(protwallt-0.1), 0, protinnerh]) + cube([protinnerw + (protwallt-0.1)*2, protd, protlidt]); + for (lr = [1,0]) { + translate([(lr ? -(protwingw + protwallt) : protinnerw), 0, 0]) { + difference(){ + translate([0, 0, 0]) + cube([protwingw, protwingd, protbaset]); + translate([protwingw/2, protwingd/2, 0]) + rotate([0,0, lr ? 45 : -45]) + slothole(baseholesz, baseholeslot, baset, slop=baseholeslop); + } + } + } +} + +module RearCableProtectorT(){ ////toplevel + rotate([90,0,0]) RearCableProtector(); +} + module Kit(){ ////toplevel for (y=[0, -wallh-5]) { translate([0,y,0]) { @@ -107,4 +144,5 @@ module Kit(){ ////toplevel } //Kit(); -BracketR(); +//BracketR(); +//RearCableProtectorT();