9 pin_gap = 1.5; // around
21 hole_dia = th + pin_gap;
25 hinge_o_r = 0.5 * hole_dia + th;
27 hinge_x = -0.5 * tube_dia - hinge_o_r;
28 bolt_x = 0.5 * tube_dia + bolt_flat * 0.5;
29 max_x = bolt_x + max(0.5 + bolt_dia + th, 0.5 * bolt_flat/2);
31 flats_y = open_gap/2 + th;
38 offset(r=-smooth_r) offset(delta=smooth_r)
40 translate([hinge_x, 0]) circle(r= hinge_o_r);
41 circle(r = tube_dia/2 + th);
42 rectfromto([0, -flats_y],
45 circle(r = tube_dia/2);
46 rectfromto([0, -open_gap/2],
47 [max_x+1, +open_gap/2]);
48 translate([hinge_x, 0]) circle(r= hole_dia/2);
53 translate([hinge_x, 0]) circle(r= hinge_o_r + d);
54 rectfromto([hinge_x*2, 0],
55 [max_x+10, -(tube_dia/2+th+10)]);
74 translate([0,0,-4]) color("red") Portion(1);
75 translate([0,0,-2]) color("grey") Portion(0);
77 translate([0, tube_dia*1.5]) {
81 // translate([max_x - hinge_x + 20, 0]) color("blue") MainPlanA();