Module revolve_contour

Source
Expand description

General contour revolution (ADR 0059).

revolve_rectangle builds one shape from four known corners. This module revolves an ARBITRARY closed section, which is what lets Contour, Section, CenterLine, Derived and Composite revolve: they all lower to a contour already, so the refusals they carried were about this module not existing rather than about the geometry being impossible.

§Which surface each segment sweeps

Measured, not assumed (revolve.py):

profile segmentswept surface
parallel to the axiscylinder
perpendicular to the axisplane (annulus)
obliquecone
circular arctorus

The cone check fitted r as an affine function of z to a residual of 2e-13; the torus check evaluated the implicit form to 1.1e-15.

§Parameterisation

Cylinder and cone both parameterise as (angle, height), so a wall between two coaxial circles uses the same four-edge seam loop in both cases. That is why they share one code path here: giving the cone its own loop builder would let the two drift.

Functions§

revolve_arc_ring
Revolve a lowered section a full turn about the profile’s local y axis.