4 arm_pindepth = (16.15 + 18.00)/2;
5 arm_innerwidth = 9.60 - 0.50;
6 arm_innerheight = 8.90 - 0.50;
13 headpart_main_dia = 15 - 0.3;
14 headpart_main_len = 14;
15 headpart_stub_protrude = 2;
16 headpart_stub_width = 11.7 - 0.3;
18 headpart_flatten_angle = 45;
22 armpart_x_unit = armpart_hex_rad * tan(30);
23 headpart_flatten_z = headpart_main_dia/2 * cos(headpart_flatten_angle);
24 headpart_stub_support_x = headpart_stub_width * cos(59) / 2;
25 headpart_stub_len = headpart_stub_protrude + headpart_main_dia/2;
27 module ArmPart(){ ////toplevel
28 translate([-arm_innerwidth/2, 1, 0])
30 cube([arm_innerwidth, arm_depth+1, arm_innerheight]);
32 linear_extrude(height=armpart_hex_thick)
38 [armpart_x_unit*2, armpart_hex_rad],
39 [armpart_x_unit, armpart_hex_rad*2],
40 [-1, armpart_hex_rad*2]]);
41 translate([0,armpart_hex_rad])
42 circle(hingepin_dia/2, $fn=20);
46 module HeadPart(){ ////toplevel
49 translate([-headpart_main_len/2, 0,0])
51 cylinder(r=headpart_main_dia/2, h=headpart_main_len, $fn=40);
53 cylinder(h = headpart_stub_len,
54 r = headpart_stub_width/2,
56 translate([-headpart_stub_support_x,
58 -headpart_main_dia/2])
59 cube([headpart_stub_support_x*2,
61 headpart_main_dia/2]);
63 translate([-100,-100,-100])
64 cube([200,200, 100 - headpart_flatten_z]);