pub struct RationalBSplineNativeTopologyReport2 { /* private fields */ }Expand description
Native-topology audit report for a retained rational B-spline extraction.
This report is deliberately stronger than a direct Vec<BezierSubcurve2>:
every retained rational Bezier span contributes a status, and only spans
with RetainedTopologyStatus::NativeExact contribute a native subcurve.
Nonuniform rational cubics and higher-degree rational Beziers therefore
remain visible exact evidence instead of disappearing behind a generic
unsupported return. This follows Yap’s retained-object discipline, while
the degree/equal-weight promotion rules are the homogeneous Bezier
identities described by Farin, Curves and Surfaces for CAGD (5th ed.,
2002).
Implementations§
Source§impl RationalBSplineNativeTopologyReport2
impl RationalBSplineNativeTopologyReport2
Sourcepub fn new(
span_reports: Vec<RationalBezierSpanTopologyReport2>,
) -> CurveResult<Self>
pub fn new( span_reports: Vec<RationalBezierSpanTopologyReport2>, ) -> CurveResult<Self>
Constructs a rational B-spline topology report from per-span reports.
Sourcepub fn span_reports(&self) -> &[RationalBezierSpanTopologyReport2]
pub fn span_reports(&self) -> &[RationalBezierSpanTopologyReport2]
Returns the per-span topology reports in source parameter order.
Sourcepub fn is_fully_native_exact(&self) -> bool
pub fn is_fully_native_exact(&self) -> bool
Returns true when every retained span promoted to exact native topology.
Sourcepub fn into_native_subcurves(self) -> Vec<BezierSubcurve2>
pub fn into_native_subcurves(self) -> Vec<BezierSubcurve2>
Consumes the report and returns only native subcurves.
Call this only after Self::is_fully_native_exact succeeds. If a
caller ignores that precondition, non-native spans are still not
synthesized.
Trait Implementations§
Source§impl Clone for RationalBSplineNativeTopologyReport2
impl Clone for RationalBSplineNativeTopologyReport2
Source§fn clone(&self) -> RationalBSplineNativeTopologyReport2
fn clone(&self) -> RationalBSplineNativeTopologyReport2
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl PartialEq for RationalBSplineNativeTopologyReport2
impl PartialEq for RationalBSplineNativeTopologyReport2
Source§fn eq(&self, other: &RationalBSplineNativeTopologyReport2) -> bool
fn eq(&self, other: &RationalBSplineNativeTopologyReport2) -> bool
self and other values to be equal, and is used by ==.