chiark / gitweb /
scaffold-clamp-cleat: sort out toplevels
[reprap-play.git] / nook-case.scad
index fa55d7f5604780011051ab36906701a31d8b33e4..ecbbbc22fd95bb31a86b9d391392bd3ef472142d 100644 (file)
@@ -1,14 +1,16 @@
 // -*- C -*-
 
+// Infill density: 20%
+
 include <funcs.scad>
 include <utils.scad>
 
-nook_th = 12.41 + 0.50 - 1.50;
-nook_w = 127.12 + 0.75 - .95;
-nook_h = 123.44 + 21.88 + 21.05 + 0.75 - 1.90;
+nook_th = 12.41 + 0.50 - 1.50 + 1.35 - .25;
+nook_w = 127.12 + 0.75 - .95 - .50;
+nook_h = 123.44 + 21.88 + 21.05 + 0.75 - 1.90 - 0.50 - 0.50;
 
 edge_ledge_w = 9.60;
-edge_ledge_h = 2.44;
+edge_ledge_h = 2.44 - .25;
 edge_ledge_inc_ang = 10; // degrees
 
 usb_w = 14.5;
@@ -37,9 +39,11 @@ engage_l0 = 10;
 engage_l1 = 10;
 engage_l2 = 3;
 
-tooth_inward = gap[0] * 1.0 + 0.25;
+tooth_inward = gap[0] * 1.0 + 0.25 + 0.25;
 tooth_w = 15;
 
+diag_near_hinge_slope = 0.5;
+
 $test = false;
 
 $fa = $test ? 10 : 3;
@@ -257,8 +261,8 @@ module DiagonaliseNearHinge(wider){
        translate([ 0, spp30[1] ])
        polygon([[  -1, 0 ],
                 [   0, 0 ],
-                [  sz, sz ],
-                [  sz, sz + 0.1 ],
+                [  sz/diag_near_hinge_slope, sz ],
+                [  sz/diag_near_hinge_slope, sz + 0.1 ],
                 [  -1, sz + 0.1 ]]);
     }
 }    
@@ -274,7 +278,7 @@ module Base(){ ////toplevel
       mirror([0,1,0])
       linextr_x_yz(-usb_w/2, usb_w/2)
       rectfromto(spp8 + [-40, usb_below], [40, 40]);
-    translate([ vectorlen2d(gap), 0,0 ])
+    translate([ gap[0], 0,0 ])
       DiagonaliseNearHinge(10);
 /*
     translate([nook_w/2, 0, 0])
@@ -283,6 +287,16 @@ module Base(){ ////toplevel
       rectfromto([-40, -open_recess_h], [40, 1]);
 */
   }
+  if ($test) {
+    linextr(spp7[1], spp8[1]) {
+      hull(){
+       for (r=[0,180])
+         rotate([0,0,r])
+           translate(nom_cnr + -1 * nook_cnr_rad*[1,1])
+           square(12);
+      }
+    }
+  }
 }
 
 module Top(){ ////toplevel