Expand description
Elementary surfaces: plane, cylinder, cone, sphere, torus.
Each is described by a Frame and its size parameters. As with the conics
the frame is not decoration: it fixes the parameterization, and therefore
fixes where a cylinder’s seam falls and which way its normal points.
Keeping these as exact analytic descriptions rather than converting them to NURBS lets intersection take analytic shortcuts, lets measurement report a radius rather than a fitted approximation of one, and keeps files small.
Evaluation and derivatives are in crate::elementary; this module holds
the descriptions and the queries that follow directly from them.
Structs§
- Cone
- An unbounded circular cone.
- Cylinder
- An unbounded circular cylinder, with the frame’s
zas its axis. - Plane
- An unbounded plane.
- Sphere
- A sphere.
- Torus
- A torus, with the frame’s
zas its axis of revolution.
Enums§
- Torus
Kind - How a torus’s minor radius compares with its major radius.
Functions§
- plane_
normal - The unit normal to a plane through
origincontainingaandb.