pub struct BezierRetainedOverlapReport2 { /* private fields */ }Expand description
Exact overlap report for materialized retained Bezier arrangement fragments.
Implementations§
Source§impl BezierRetainedOverlapReport2
impl BezierRetainedOverlapReport2
Sourcepub fn from_graph(
graph: &BezierArrangementGraph2,
policy: &CurvePolicy,
) -> Classification<Self>
pub fn from_graph( graph: &BezierArrangementGraph2, policy: &CurvePolicy, ) -> Classification<Self>
Scans a retained arrangement graph for certified materialized overlaps.
Algebraic endpoint-image and unresolved fragments are not overlap- resolved here because endpoint evidence alone is not a curve-image overlap proof. Materialized pairs whose relation remains unresolved return boundary uncertainty so callers cannot treat an incomplete scan as a no-overlap proof.
Sourcepub fn new(overlaps: Vec<BezierRetainedOverlap2>) -> CurveResult<Self>
pub fn new(overlaps: Vec<BezierRetainedOverlap2>) -> CurveResult<Self>
Constructs a report from already-certified overlaps.
Sourcepub fn overlaps(&self) -> &[BezierRetainedOverlap2]
pub fn overlaps(&self) -> &[BezierRetainedOverlap2]
Returns certified overlap pairs.
Sourcepub fn into_overlaps(self) -> Vec<BezierRetainedOverlap2>
pub fn into_overlaps(self) -> Vec<BezierRetainedOverlap2>
Consumes the report and returns certified overlap pairs.
Sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
Returns true when the scan found no certified materialized overlaps.
Sourcepub fn line_overlap_splits(
&self,
policy: &CurvePolicy,
) -> Classification<Vec<BezierRetainedLineOverlapSplit2>>
pub fn line_overlap_splits( &self, policy: &CurvePolicy, ) -> Classification<Vec<BezierRetainedLineOverlapSplit2>>
Extracts exact line-image overlap split evidence from this report.
Same-control and same-curve-image overlaps are full curve-image
degeneracies and do not have line affine ranges here. Only
BezierRetainedOverlapRelation2::LineSegmentOverlap contributes.
Sourcepub fn linear_bezier_overlap_splits(
&self,
graph: &BezierArrangementGraph2,
policy: &CurvePolicy,
) -> Classification<Vec<BezierRetainedLinearOverlapSplit2>>
pub fn linear_bezier_overlap_splits( &self, graph: &BezierArrangementGraph2, policy: &CurvePolicy, ) -> Classification<Vec<BezierRetainedLinearOverlapSplit2>>
Promotes exact line-image overlaps to Bezier-parameter split evidence.
This succeeds only when every line-image overlap in the report is backed by materialized polynomial Bezier fragments with certified linear parameterization. A single nonlinear line image makes the result unsupported rather than partially emitted, because callers use this method as a complete graph-splitting precondition.
Trait Implementations§
Source§impl Clone for BezierRetainedOverlapReport2
impl Clone for BezierRetainedOverlapReport2
Source§fn clone(&self) -> BezierRetainedOverlapReport2
fn clone(&self) -> BezierRetainedOverlapReport2
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BezierRetainedOverlapReport2
impl Debug for BezierRetainedOverlapReport2
Source§impl Default for BezierRetainedOverlapReport2
impl Default for BezierRetainedOverlapReport2
Source§fn default() -> BezierRetainedOverlapReport2
fn default() -> BezierRetainedOverlapReport2
Source§impl PartialEq for BezierRetainedOverlapReport2
impl PartialEq for BezierRetainedOverlapReport2
Source§fn eq(&self, other: &BezierRetainedOverlapReport2) -> bool
fn eq(&self, other: &BezierRetainedOverlapReport2) -> bool
self and other values to be equal, and is used by ==.