chiark / gitweb /
doveclip fix DoveClipPairSane with baseextend
[reprap-play.git] / doveclip.scad
index 5291c4946434292f254c967b6a7dbcdf6c6b5137..9884e8aa5d99b0d9ab3523e0a199e3297ac47407 100644 (file)
@@ -32,6 +32,11 @@ module DoveClipPin(h=height) {
   }
 }
 
   }
 }
 
+function DoveClip_depth(baseextend) =
+  basethick + nomrad*2 + toothheight + baseextend;
+function DoveClip_width() =
+  nomrad*2 + jawthick*2 + toothgap;
+
 module DoveClipEnd(baseextend=1, h=7) {
   cubex = nomrad*2 + jawthick*2;
   cube0y = -basethick-nomrad*2-toothheight;
 module DoveClipEnd(baseextend=1, h=7) {
   cubex = nomrad*2 + jawthick*2;
   cube0y = -basethick-nomrad*2-toothheight;
@@ -47,7 +52,7 @@ module DoveClipEnd(baseextend=1, h=7) {
 }
 
 module DoveClipPair(baseextend=1, h=7) {
 }
 
 module DoveClipPair(baseextend=1, h=7) {
-  delta = nomrad*2 + jawthick*2 + toothgap;
+  delta = DoveClip_width();
   for (x=[-delta/2,delta/2])
     translate([x,0,0])
       DoveClipEnd(baseextend=baseextend, h=h);
   for (x=[-delta/2,delta/2])
     translate([x,0,0])
       DoveClipEnd(baseextend=baseextend, h=h);
@@ -63,3 +68,11 @@ module DoveClipPairBase(baseextend=0.1, h=7) {
   translate([-delta, -intrude, 0])
     cube([delta*2, intrude+0.1, h]);
 }
   translate([-delta, -intrude, 0])
     cube([delta*2, intrude+0.1, h]);
 }
+
+module DoveClipPairSane(baseextend=0, h=7) {
+  rotate([0,0,90])
+    translate([0, DoveClip_depth(baseextend=0), 0])
+    DoveClipPairBase(baseextend=baseextend, h=h);
+}
+
+DoveClipPairSane(baseextend=10);