wall = 1;
-body_l = 70 + 0.5;
-body_w = 33 + 0.5;
-body_h = 28 + 0.5;
+body_l = 70 + 0.7;
+body_w = 33 + 0.7;
+body_h = 28 + 0.7;
corner_r = 8;
corner_side_h = 12;
-hook_w = 3.5;
-hook_l = 6;
-hook_hole_l = 3;
-hook_hole_w = 2;
+hook_w = 4;
+hook_l = 6.5;
+hook_hole_l = 4;
+hook_hole_w = 2.5;
hook_h = 3;
+hook_center_hole = 15;
+
bottom_hole_l = body_l - 2*corner_r - 2*hook_l;
bottom_hole_w = body_w - 4*wall;
side_hole_bot = 2*wall;
lens_d = 23;
-lens_hole_l = 3;
+lens_hole_l = 4;
lens_zoff = 8;
}
}
-// rubber band hooks
+// rubber band side hooks
for (x = [-1, 1]) for (y = [-1, 1]) scale([x, y, 1])
difference() {
translate([body_l/2 - corner_r - hook_l,
cube([hook_hole_l + eps, hook_hole_w, hook_h+2*eps]);
}
+// center hooks
+for (y = [-1, 1]) scale([1, y, 1])
+ difference() {
+ translate([-hook_center_hole/2-hook_l, body_w/2, 0])
+ cube([2*hook_l+hook_center_hole, hook_w + wall, hook_h]);
+ translate([-hook_center_hole/2, body_w/2 + wall, -eps])
+ cube([hook_center_hole, hook_hole_w, hook_h+2*eps]);
+ for (x = [-1, 1]) scale([x, 1, 1])
+ translate([hook_center_hole/2+hook_l - hook_hole_l,
+ body_w/2 + wall, -eps])
+ cube([hook_hole_l + eps, hook_hole_w, hook_h+2*eps]);
+ }
+
if (0) {
// base plate
difference() {