vhook_th = 10;
-vhook_smooth = 3;
-
theta = atan2( smooth_r, main_r );
vhook_inside = 15;
vhook_y0 = -cos(theta) * (main_r + smooth_r);
vhook_ctr = vhook_y0 - vhook_inside/2;
+vhook_outer_dia = vhook_inside + vhook_th*2;
//echo(theta);
}
module VHookProfile() {
- offset(r=+vhook_smooth)
- offset(delta=-vhook_smooth)
- rectfromto([ -vhook_th/2, -vhook_inside/2 ],
- [ +vhook_th/2, -vhook_inside/2 - vhook_th]);
+ translate([0, -vhook_inside/2 - vhook_th/2])
+ circle(r = vhook_th/2);
}
module PartB(){ ////toplevel
GeneralB();
}
+module VHookHookMain(){ ////toplevel
+ rotate([0,90,0])
+ rotate_extrude(convexity=10)
+ rotate([0,0,90])
+ VHookProfile();
+}
+
module PartA(){ ////toplevel
DummyA();
linextr(min_z, max_z)
VHookPlan();
+
+ translate([0, vhook_ctr, min_z + vhook_outer_dia/2]){
+ intersection(){
+ VHookHookMain();
+ }
+ }
+
//translate([0, vhook_y0, 50]) rotate([0,0,-90]) color("black") cube(10);
// translate([0,0,-150]) rotate([0,0,180 + theta]) color("blue") cube(100);
}