/spec sheet · hooks.py
Spec sheet · hooks.py

hooks.py

A ring hook: a rectangular mounting base that flares up and joins tangentially to a Y-axis cylinder — the ring — with a round, D-shaped or custom through-hole.

ring_hook([50, 10], 25, or_=25, ir=20)interactive · drag to orbit
hole_z base flares along the ring tangent

rendered & measured

watertight

Give exactly two of or/od, ir/id and wall to size the ring. The base flares to the tangent points computed by circle_point_tangents(), so the paddle meets the cylinder seamlessly. Circle, D and custom-path holes all close watertight.

variants · click to load
208triangles
9,771.2mm³ volume
50×10×50bbox mm
>>> Hooks.ring_hook([50, 10], 25, or_=25, ir=20)
tangent join
The base corners must lie outside the ring so a tangent exists; the flare follows it exactly. Verified watertight for round, D and octagonal holes.