chiark / gitweb /
fairphone-case: move keeper to lhs
[reprap-play.git] / sprinkler-spike-receptacle.scad
index d7d9fddf6dcfbc268bff982419890ddf3a00cfd5..c1ac3b5fc54adc2eb4c3e7747ff4e5184282f60f 100644 (file)
@@ -18,6 +18,14 @@ mount_hole_dia = 4.5;
 mount_head_dia = 7.5;
 mount_hole_th = 2.5;
 
+strap_height = main_height * 0.5;
+
+strap_width = 5.5;
+strap_thick = 2.5;
+strap_around = 2.5;
+strap_fixing_height = 4.0;
+strap_fixing_slope = 1.0;
+
 // calculated
 
 main_width = spike_top_width + topwall_width*2;
@@ -88,6 +96,33 @@ module FixingsPositive(){
     cube([ mount_dist + mount_width/2 + 1,
           mount_width,
           mount_height ]);
+
+  // strap
+  for (m=[0,1]) mirror([0,m,0]) {
+      translate([main_width/2, 0, strap_height]) {
+       hull(){
+         translate([ -strap_around,
+                     -pos_web_thick/2,
+                     -(strap_thick + strap_around) / strap_fixing_slope ])
+           cube([ strap_around,
+                  pos_web_thick/2 - strap_width/2,
+                  0.5 ]);
+         translate([ -strap_around,
+                     -(strap_around + strap_width/2),
+                     0 ])
+           cube([ strap_around*2 + strap_thick,
+                  strap_around,
+                  strap_fixing_height ]);
+       }
+       mirror([0,1,0])
+         translate([ strap_thick,
+                     -strap_width/2,
+                     0 ])
+         cube([ strap_around,
+                strap_around + strap_width,
+                strap_fixing_height ]);
+      }
+    }
 }
 
 module FixingsNegative(){
@@ -152,5 +187,14 @@ module Tests(){
   MainFitTest();
 }
 
+module StrapFixingTest(){
+  intersection(){
+    Main();
+    translate([ -10, -10, 40 ])
+      cube([ 20, 40, 15 ]);
+  }
+}
+
 //Tests();
+//StrapFixingTest();
 Main();