28 walll = basel + webt + padl;;
30 webw = min(basew, padw);
32 module slothole(sz, slot, thick, csunk=true, slop=holeslop) {
34 for (y = [-slot/2,slot/2]) {
35 translate([0,y,-0.05])
36 cylinder(r1=sz/2 + slop,
37 r2=sz/2 + (csunk ? thick : 0) + slop,
45 translate([0, -basew, 0])
46 cube([basel, basew, baset]);
48 translate([basel/2, -(basew+wallt)/2, 0])
49 slothole(baseholesz, baseholeslot, baset, slop=baseholeslop);
54 linear_extrude(height=wallt){
56 [0, wallh/2 + wallholesz/2 + wallt + wallt],
59 [walll, wallh - padt - padt],
64 translate([basel/2, 0, wallholeh])
66 slothole(wallholesz, wallholeslot, wallt, csunk=false);
69 translate([basel-0.01, 0, 0]) {
71 linear_extrude(height=webt+0.02) {
81 translate([basel+webt, -padw, wallh-padt]) {
83 cube([padl, padw, padt]);
84 translate([padl/2, padw/2, -1])
85 cylinder(r=padholesz/2 + holeslop, h=padt+2);
90 module BracketR(){ ////toplevel
91 rotate([-90,0,0]) Bracket();
94 module BracketL(){ ////toplevel
95 mirror([1,0,0]) BracketR();
98 module Kit(){ ////toplevel
99 for (y=[0, -wallh-5]) {
101 translate([5,0,0]) BracketR();