hook_w = 3.5;
hook_l = 6;
-hook_hole_l = 2;
-hook_hole_w = 1.5;
+hook_hole_l = 3;
+hook_hole_w = 2;
+
+ziptie_w = 4;
+ziptie_h = 3;
// base plate
difference() {
// cube([body_l-2*corner_r-2*hook_l, body_w - 2*corner_r, wall +2*eps]);
translate([-body_l/2+corner_r, -body_w/2+corner_r, -eps])
cube([body_l-2*corner_r, body_w - 2*corner_r, wall +2*eps]);
+
+ // ziptie angles
+ for (x = [-1, 1]) for (y = [-1, 1]) scale([x, y, 1])
+ translate([body_l/2-corner_r-hook_l-ziptie_w,
+ body_w/2+wall/2-corner_r/2, wall])
+ rotate([-40, 0, 0])
+ translate([0, -ziptie_h/2, -infty/2])
+ cube([ziptie_w, ziptie_h, infty]);
+
+ // more space for lens
+ for (x = [-1, 1]) scale([x, 1, 1])
+ translate([body_l/2, -body_w/2+corner_r, -eps])
+ cube([wall+eps, body_w-2*corner_r, wall+2*eps]);
}
// raised corner bottom
translate([0, 0,-eps])
cylinder(r = corner_r, h = infty);
translate([-infty, -infty/2, -infty/2]) cube(infty);
+ // front edges cut
+ rotate([-30, 0, 0])
translate([-infty/2, -infty, -infty/2]) cube(infty);
}