Module curve

Source

Modules§

conic
Exact conic curve data.
elevation
Elevation laws and the composition of a planar curve with one.
evaluate
Backend-open curve evaluation capability.
implicit
Curves given implicitly: where a field over a surface’s parameters is zero (ADR 0077).
linear
Linear curve values.
linear_vocabulary
The focused linear vocabulary, re-exported for consumers that want to name its origin explicitly. A line-only consumer should depend on axiolid-linear directly instead of paying for this aggregate.
pair_section
Where two parametric surfaces meet, carried by nodes on both (ADR 0077).
quadric_section
Where a quadric cuts a cylinder or cone, read in the ruled surface’s own parameters (ADR 0076).
sinusoid
The height wave a plane cuts across a cylinder, in the cylinder’s own parameters.
spline
B-spline and rational B-spline curve data.
spline_surface
Polynomial and rational B-spline surfaces.
torus_section
Where a plane or sphere cuts a torus, read in the torus’s own parameters (ADR 0076).

Structs§

AngleGraph2
The solution u(t) of a(t) cos u + b(t) sin u = c(t) chosen by branch, as a graph over its second coordinate: the point at t is (u(t), t).
BSplineCurve
Exact B-spline data. Rational curves carry one weight per control point.
BSplineSurface
Tensor-product B-spline surface preserving exact knot and weight data.
Circle2
Circle in a two-dimensional frame.
Circle3
Circle in a three-dimensional plane frame.
Elevated3
A planar curve carrying an independent elevation law.
Ellipse2
Ellipse in a two-dimensional frame.
Ellipse3
Ellipse in a three-dimensional plane frame.
Harmonic
One sinusoidal term of a curvature law: amplitude * sin(angular_frequency * s + phase).
ImplicitCell
One stretch of an ImplicitCurve2: as the free parameter runs from from to to, the curve is the unique zero of the field for the other parameter in [low, high], where the field is strictly monotone in it.
ImplicitCurve2
A stretch of a field’s zero set, in the parameters of the surface the field lives on. The parameter t runs over [0, cells.len()]: cell i covers [i, i + 1], its free parameter moving linearly from from to to.
ImplicitSection3
An ImplicitCurve2 on its carrier, in space: the point at t is the carrier’s point at curve.point(t).
Intrinsic2
A plane curve given by its natural equation: a curvature law anchored to a start frame and run for a finite arc length.
Intrinsic3
A space curve given by its natural equations.
Jet2
A field’s value, gradient and Hessian at one point.
LiftedCurve2
A curve in space read in an analytic surface’s parameters: the pcurve at t is the carrier’s parameters of curve’s point at t, so it shares the edge’s parameter exactly. This is the pcurve, on the analytic face, of a section that only the other face’s surface can carry (a B-spline’s section, ADR 0077): the inverse is in closed form for planes, ruled surfaces, spheres and tori.
Line
Infinite parametric line origin + t * direction.
PairNode
A point on both surfaces, with its parameters on each.
PairSection3
A stretch of the curve where two surfaces meet. The parameter runs over [0, nodes.len() - 1], one unit per chord.
PatchField2
A piecewise polynomial field: on each cell of the grid of u_breaks by v_breaks, a tensor-product Bernstein polynomial of degree (u_degree, v_degree) in the cell’s local coordinates s, t in [0, 1]. Its coefficients bound it (the convex hull property), which is what makes a trace on it certified.
Polyline
Piecewise-linear curve preserving source vertex order.
QuadraticGraph2
The graph of one root of a(t) v^2 + b(t) v + c(t) = 0, parameterised by its first coordinate: the point at t is (t, v(t)).
RuledCarrier
A ruled carrier surface, as the curve needs it: a cylinder (rx = ry, slope = 0), an elliptical cylinder (slope = 0) or a cone (rx = ry, slope = tan(semi-angle)), in the same parameterisation as the matching axiolid_surface family.
RuledSection3
A quadric’s section of a ruled carrier, in space: the point at t is the carrier’s point at (t, graph.height(t)).
SeriesField2
A field over the parameter plane: sum c[i][j] B_i(u) B_j(v), with the bases of Basis along each parameter. The form a plane’s, quadric’s or torus’s equation takes on an analytic surface.
Sinusoid2
The graph v = mean + cosine cos(t) + sine sin(t), parameterised by t.
SurfaceJet
A point’s partial derivatives on a Carrier, to second order.
TorusCarrier
A torus, as the curve needs it, in axiolid_surface::Torus’s parameterisation: O + (R + r cos v)(cos u X + sin u Y) + r sin v Z.
TorusSection3
A plane’s or sphere’s section of a torus, in space: the torus point at (graph.angle(t), t).
Trig2
constant + cos cos(t) + sin sin(t) + cos2 cos(2t) + sin2 sin(2t).

Enums§

Axis
Which parameter a cell runs along; the other is solved for.
Basis
How a SeriesField2 varies along one parameter.
Branch
Which root of the quadratic a graph follows.
Carrier
The surface a traced curve lies on, as the curve needs it, in the same parameterisation as the matching axiolid_surface family.
CurvatureLaw
Curvature as a closed-form function of arc length.
Curve2
Atomic two-dimensional curve values.
Curve3
Atomic three-dimensional curve values.
ElevationLaw
Height as a function of distance along the plan.
Field2
A field over a surface’s parameters whose zero set is a section curve: another surface’s equation read in this surface’s parameters.
KnotSpec
How the knot vector was specified by the source representation.

Traits§

CurveEvaluator
Evaluate and differentiate one curve representation.

Type Aliases§

BSplineCurve2
Two-dimensional B-spline curve.
BSplineCurve3
Three-dimensional B-spline curve.
Line2
Two-dimensional line.
Line3
Three-dimensional line.
Polyline2
Two-dimensional polyline.
Polyline3
Three-dimensional polyline.