fixing_depth + fixing_surround_ceil
);
-ratchet_handle_nom_depth = ratchet_handle_head_d0;
+ratchet_handle_nom_depth = max(
+ ratchet_handle_head_d0,
+ ratchet_handle_grip_end_h
+ );
//==================== models - general ====================
}
module RatchetHandleWell() { ////toplevel
- RatchetHandlePositive();
+ // cope with the ratchet handle not being the same height at each end
+
+ pivot = [
+ ratchet_handle_head_end_x + ratchet_handle_head_d0/2,
+ 0,
+ ratchet_handle_head_d0/2
+ ];
+
+ pivot_ratio =
+ (ratchet_handle_grip_end_h - ratchet_handle_head_d0)/2 /
+ (ratchet_handle_grip_end_x - ratchet_handle_head_end_x);
+ pivot_ang = atan(pivot_ratio);
+
+ translate(pivot)
+ rotate([0, pivot_ang, 0])
+ translate(-pivot)
+ RatchetHandlePositive();
}
module RatchetHandleHolder() { ////toplevel