chiark / gitweb /
air-hockey-puck: wip
[reprap-play.git] / digispark-with-cable.scad
index 23b6c2eb7dd769b9ea880982daf6a2cca691f7bf..1ad978c878af66ee7bcb99deda0bc93b90872ca3 100644 (file)
@@ -44,6 +44,7 @@ strain_pitch_across = 5;
 strain_pitch_along = 10;
 strain_groove_d = 2;
 strain_groove_w = 4.5;
+strain_around = [2.25, 2.00];
 
 cover_strap_c_d_y = 5.5; // from front of board
 cover_registration_sz_y = 2;
@@ -200,6 +201,14 @@ module MidBotRegistrations(){
   }
 }
 
+module MiddleStrainHoles(){
+  BothSides(){
+    for (y_c = [strain_0_y_c, strain_1_y_c]) {
+      translate([strain_pitch_across/2, y_c, 0])
+       square([ strain_t, strain_w ], center=true);
+    }
+  }
+}
 module Middle(){ ////toplevel
   difference(){
     union(){
@@ -216,13 +225,8 @@ module Middle(){ ////toplevel
       MidBotRegistrations();
     }
 
-    for (y_c = [strain_0_y_c, strain_1_y_c]) {
-      for (x_c = [-1,+1] * strain_pitch_across/2) {
-       translate([x_c, y_c, 0])
-         linextr(-20, 20)
-         square([ strain_t, strain_w ], center=true);
-      }
-    }
+    linextr(-20, 20)
+      MiddleStrainHoles();
     linextr_y_xz(total_y_min-1, main_y_min)
       translate([0, middle_base_z])
       scale([1, strain_groove_d/strain_groove_w])
@@ -301,6 +305,12 @@ module Cover(){ ////toplevel
       CoverRegistrations();
     }
     CoverStrapCutouts();
+    linextr(-20,20) {
+      minkowski(){
+       square(strain_around * 2, center=true);
+       hull() MiddleStrainHoles();
+      }
+    }
   }
 }
 module CoverPrint(){ ////toplevel
@@ -312,3 +322,8 @@ module BottomDemo(){ ////toplevel
   %Middle();
   translate([0, 0, +0.25]) Cover();
 }
+module ImpressionDemo(){ ////toplevel
+  color("black") translate([0, 0, -0.25]) Bottom();
+  %Middle();
+  %translate([0, 0, +0.25]) Cover();
+}