pub struct Elevated3 {
pub plan: Box<Curve2>,
pub elevation: ElevationLaw,
}Expand description
A planar curve carrying an independent elevation law.
This is the composition an alignment centreline actually is: the plan is
exact – including the transition spirals a Curve2::Intrinsic holds –
and the vertical profile is exact, and neither is approximated to pair
them. Evaluation is parameterised by PLAN DISTANCE, which is the parameter
both halves are authored against.
Composition rather than re-encoding: a Curve3::BSpline fitted through the
pair would lose both. Storing the two laws keeps each one’s own exactness
and lets a consumer recover either half unchanged.
Only a plan whose parameter is arc length (line, circle, intrinsic) can carry a law. A B-spline’s parameter is not a distance, so evaluators refuse an elevated B-spline plan rather than reinterpret the law (ADR 0060).
Fields§
§plan: Box<Curve2>Horizontal layout. Boxed to keep Curve3 small.
elevation: ElevationLawHeight as a function of distance along plan.