]> www.fi.muni.cz Git - things.git/blobdiff - firefly-q6-case.scad
switch holder.scad
[things.git] / firefly-q6-case.scad
index 5393c6821b7100c6a6b5fe42bff9fd81ba10678c..88ba81f8fc737eceacdb4c2172f36865868c76d8 100644 (file)
@@ -3,18 +3,20 @@ eps = 0.01;
 
 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;
 
@@ -23,7 +25,7 @@ side_hole_l2 = body_l - corner_r;
 side_hole_bot = 2*wall;
 
 lens_d = 23;
-lens_hole_l = 3;
+lens_hole_l = 4;
 lens_zoff = 8;
 
 
@@ -62,7 +64,7 @@ difference() {
        }
 }
 
-// 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,
@@ -73,6 +75,19 @@ for (x = [-1, 1]) for (y = [-1, 1]) scale([x, y, 1])
                        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() {