chiark / gitweb /
osstest-arm-net-bracket: t2streng looks reasonable
[reprap-play.git] / osstest-arm-net-bracket.scad
index 05bcf1d53b8e83e714017f2de9b49d91f8a6208d..db588135235cc57b3a3e5131cf8f1cad5e61ee0b 100644 (file)
@@ -25,6 +25,12 @@ cutoutover = 7;
 rcutoutside = 7+2 - 0.5;
 lcutoutside = 7-6.5 - 0.5;
 
+t2strengwidth = 10;
+t2strengwidtht = 3;
+t2strenglen = tongue2depth + 8;
+
+strapholethicker = 1.5;
+
 holedia = 3.5;
 
 tongue2x = tongue2width - holedist;
@@ -33,20 +39,38 @@ module Tongue(tw,tt,ad,slots=2){
   y0=thick+0.1;
   yn=ad-ridgewidth-strapwidth;
   difference(){
-    translate([-tw, 0, 0])
-      cube([tw, ad, tt+strapthick]);
+    union(){
+      translate([-tw, 0, 0])
+       cube([tw, ad, tt+strapthick]);
+      child();
+    }
     for (yi=[1:slots-1])
       translate([-tw-1, y0 + (yn-y0)*yi/(slots-1), tt])
-       cube([tw+2, strapwidth, strapthick+0.05]);
+       cube([tw+2, strapwidth, strapthick+strapholethicker]);
+  }
+}
+
+module Body(){
+  translate([-holedist-tabsider, 0, 0]) {
+    cube([tabsidel+tabsider+holedist, thick, tabunder+tabover]);
+    cube([tabsidel+tabsider+holedist, thick+hstrengdepth, hstrengthick]);
+  }
+  Tongue(tonguewidth,tonguethick,totaldepth,3);
+  translate([tongue2x,0,0])
+    Tongue(tongue2width,tongue2thick,tongue2depth+thick,5) {
+    mirror([1,0,0]) hull(){
+      translate([-(tongue2width-t2strengwidth)*0.05, 0,0]) 
+       cube([t2strengwidth,t2strenglen,
+             tongue2thick+strapthick+strapholethicker]);
+      translate([-(t2strengwidtht-t2strengwidth)*0.45, 0,0]) 
+       cube([t2strengwidtht,thick+0.1,tabunder+tabover]);
+    }
   }
 }
 
 module Object(){
   difference(){
-    translate([-holedist-tabsider, 0, 0]) {
-      cube([tabsidel+tabsider+holedist, thick, tabunder+tabover]);
-      cube([tabsidel+tabsider+holedist, thick+hstrengdepth, hstrengthick]);
-    }
+    Body();
     translate([0,-25,tabunder+cutoutover]) {
       translate([-(holedist+rcutoutside), 0,0])
        mirror([1,0,0])
@@ -65,9 +89,6 @@ module Object(){
          cube(center=true,[10,40,10]);
       }
   }
-  Tongue(tonguewidth,tonguethick,totaldepth,3);
-  translate([tongue2x,0,0])
-    Tongue(tongue2width,tongue2thick,tongue2depth+thick,5);
 }
 
 Object();