chiark / gitweb /
scaffold-clamp: wip vhook
[reprap-play.git] / scaffold-clamp-vhook.scad
1 // -*- C -*-
2
3 hinge_units = 4;
4
5 include <scaffold-clamp-common.scad>
6
7 vhook_th = 10;
8
9 vhook_smooth = 3;
10
11 theta = atan2( smooth_r, main_r );
12
13 vhook_inside = 15;
14
15 // calculated
16
17 vhook_y0 = -cos(theta) * (main_r + smooth_r);
18 vhook_ctr = vhook_y0 - vhook_inside/2;
19
20 //echo(theta);
21
22 module VHookPlan() {
23   PlanWeldMainCircle(){
24     rectfromto([ -vhook_th/2, 0 ],
25                [ +vhook_th/2, vhook_y0 ]);
26   }
27 }
28
29 module VHookProfile() {
30   offset(r=+vhook_smooth)
31   offset(delta=-vhook_smooth)
32   rectfromto([ -vhook_th/2, -vhook_inside/2 ],
33              [ +vhook_th/2, -vhook_inside/2 - vhook_th]);
34 }
35
36 module PartB(){ ////toplevel
37  GeneralB();
38 }
39
40 module PartA(){ ////toplevel
41   DummyA();
42   linextr(min_z, max_z)
43     VHookPlan();
44   //translate([0, vhook_y0, 50]) rotate([0,0,-90]) color("black") cube(10);
45   // translate([0,0,-150]) rotate([0,0,180 + theta]) color("blue") cube(100);
46 }
47
48 module PlanDemo(){ ////toplevel
49   GeneralPlanDemo();
50   translate([0, -tube_dia*1.5]) {
51     VHookPlan();
52     translate([0, vhook_ctr, 5])
53       for (m=[0,1]) {
54         mirror([0,m])
55           color("blue") VHookProfile();
56       }
57   }
58 }