angle = 120; thickness = 4; diam_offset = 1; $fn=100; module arm(inner_radius, angle, thickness){ rotate_extrude(angle=angle){ translate([inner_radius+thickness/2,0,0]) square(size=[thickness, thickness], center=true); } } module grasp(inner_radius, angle, thickness){ arm(inner_radius, angle, thickness); mirror([0, 1, 0]) { arm(inner_radius, angle, thickness); } } grasp(8+diam_offset/2, angle, thickness); translate([1.5, 25,0]) grasp(6.12+diam_offset/2, angle, thickness); translate([3, 46,0]) grasp(4.25+diam_offset/2, angle, thickness); translate([16,23,15-thickness/2]) difference(){ cube(size=[thickness, 60, 30], center=true); translate([0,10,0]) rotate([0,90,0]) cylinder(r=2, h=10, center=true); translate([0,-10,0]) rotate([0,90,0]) cylinder(r=2, h=10, center=true); } translate([12, 23, 0]) cube(size=[thickness, 60, 4], center=true);