chiark / gitweb /
scaffold-clamp: wip vhook
[reprap-play.git] / scaffold-clamp-common.scad
index 0f7ddf00b0b13732d6ebd835d83494a80b713b29..f67d5eb1e8b4fbf65f341fe17d13e3f0a1b0296e 100644 (file)
@@ -56,7 +56,7 @@ vhook_inside = 15;
 
 vhook_theta = atan2( smooth_r, main_r );
 
-vhook_y0 = -cos(vhook_theta) * (main_r + smooth_r);
+vhook_y0 = -max(main_r, (tube_dia/2 + vhook_th));
 vhook_ctr = vhook_y0 - vhook_inside/2;
 vhook_outer_dia = vhook_inside + vhook_th*2;
 
@@ -169,13 +169,6 @@ module PlanDemo(){ ////toplevel
 
 // ---------- vhook ----------
 
-module VHookPlan() {
-  PlanWeldMainCircle(){
-    rectfromto([ -vhook_th/2, 0 ],
-              [ +vhook_th/2, vhook_y0 ]);
-  }
-}
-
 module VHookProfile() {
   translate([0, -vhook_inside/2 - vhook_th/2])
     circle(r = vhook_th/2);
@@ -190,12 +183,17 @@ module VHookHookMain(){ ////toplevel
 
 module VHookPartA(){ ////toplevel
   DummyA();
-  linextr(min_z, min(min_z + vhook_outer_dia * 1.5, max_z))
-    VHookPlan();
 
   translate([0, vhook_ctr, min_z + vhook_outer_dia/2]){
-    linextr(-0.1, vhook_outer_dia/2)
-      VHookProfile();
+    for (m=[0,1]) {
+      mirror([0, m, 0]) {
+       linextr(-0.1, vhook_outer_dia/2)
+         VHookProfile();
+       translate([0, -vhook_inside/2 -vhook_th/2, vhook_outer_dia/2])
+         sphere(r= vhook_th/2);
+      }
+    }
+
     intersection(){
       VHookHookMain();
       translate([0,0, -vhook_outer_dia])