Module revolve_exact

Source
Expand description

Exact revolution for the profile families exact extrusion already covers.

§What is exactly representable

Revolving a rectangle a full turn about an axis it does not cross produces an annular tube: two cylinders (inner and outer radius) capped by two annular planes. Every one of those is an elementary surface the kernel already carries, so the result is exact – no tessellation, no sampled approximation.

§What is refused, and why that is the honest answer

A PARTIAL turn is not this shape. It has two extra planar walls at the start and end angles, and its cap loops are not closed circles but circular arcs joined by radial segments. That is a different topology, not a parameter change, so it is refused rather than approximated.

A profile crossing the axis degenerates: the inner cylinder collapses to the axis line and the caps stop being annuli. Refused for the same reason.

The mesh path in revolve.rs handles all of these. Refusing here means a caller asking for exactness gets a typed refusal naming the gap instead of a silently tessellated substitute.

Functions§

fixed_reference_sweep_exact
Sweep a supported profile along a straight path with a fixed reference.
revolve_profile_exact
Revolve a supported profile into an exact, closed analytic B-rep.