+module PinSitu(){ ////toplevel
+ difference(){
+ union(){
+ translate([0,0, -pin_head_th])
+ cylinder(r= pin_dia/2, h = total_z + pin_head_th + pin_tail);
+ mirror([0,0,1])
+ cylinder(r= hinge_o_r - pin_gap, h = pin_head_th);
+ }
+ translate([0,0, total_z + pin_tail/2])
+ rotate([0,90,0])
+ translate([0,0, -pin_dia])
+ cylinder(r= pin_hole_dia/2, h=pin_dia*2);
+ translate([pin_dia/2 * cos(45), -50, -pin_head_th*2])
+ cube([50,100, total_z*2]);
+ }
+}
+
+module Pin(){ ////toplevel
+ rotate([0,90,0]) {
+ PinSitu();
+ }
+}
+