diff options
Diffstat (limited to 'lampenhalter.scad')
-rw-r--r-- | lampenhalter.scad | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/lampenhalter.scad b/lampenhalter.scad index d63d705..735ce48 100644 --- a/lampenhalter.scad +++ b/lampenhalter.scad @@ -10,6 +10,8 @@ ad = 2; cr = 2; +support_fraction = 0.5; + module round_corner(r, h) { translate([-r, -r, 0]) difference() { @@ -18,15 +20,28 @@ module round_corner(r, h) { } } +module side() { + w2 = (w-wi)/2; + s = support_fraction * (w2 - d); + translate([0, t, 0]) + rotate([90, 0, 0]) + linear_extrude(height = t, convexity=2) + polygon([[0,0], [0,h], [w2,h], [w2,h-d], [d,h-d-s], [d,0]]); +} + difference() { union() { - cube([w,t,h]); - }; - union() { - // rail negative - translate([d, d, d]) cube([w-2*d,t,h-2*d]); - translate([(w-wi)/2, d, h-d]) cube([wi, t, d]); + // base plate + cube([w, t, d]); + // back + cube([w, d, h]); + + // sides and top + side(); + translate([w, 0, 0]) mirror() side(); + } + union() { // retainer hole translate([(w-aw)/2, t-at-ad, 0]) cube([aw, at, 2*d]); |