Enum CertifiedCurveIntersection2
#[non_exhaustive]pub enum CertifiedCurveIntersection2 {
Complete {
intersections: Vec<TransverseCurveIntersection2>,
visited_nodes: u32,
},
Degenerate {
classification: CurveIntersectionDegeneracy,
contacts: Vec<ClassifiedCurveContact2>,
visited_nodes: u32,
},
}Expand description
Planar curve/curve classification under the implemented proof paths.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Complete
Every product-domain cell was excluded or represented by one transverse root. Each returned parameter interval is no wider than the requested tolerance.
Fields
§
intersections: Vec<TransverseCurveIntersection2>Isolated transverse roots. Empty means certified disjointness.
Degenerate
A singular or currently unsupported candidate was not called transverse.
Fields
§
classification: CurveIntersectionDegeneracyStrongest class proven across contacts.
Precedence is Overlap > Tangency > PointContact > Unresolved:
a caller that only wants one verdict gets the most structural one,
while contacts retains which box proved what.
§
contacts: Vec<ClassifiedCurveContact2>Per-box classification. Boxes are deduplicated and boundary-owned, so a root on a shared cell endpoint appears exactly once.
Trait Implementations§
§impl Clone for CertifiedCurveIntersection2
impl Clone for CertifiedCurveIntersection2
§fn clone(&self) -> CertifiedCurveIntersection2
fn clone(&self) -> CertifiedCurveIntersection2
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for CertifiedCurveIntersection2
impl Debug for CertifiedCurveIntersection2
§impl PartialEq for CertifiedCurveIntersection2
impl PartialEq for CertifiedCurveIntersection2
impl StructuralPartialEq for CertifiedCurveIntersection2
Auto Trait Implementations§
impl Freeze for CertifiedCurveIntersection2
impl RefUnwindSafe for CertifiedCurveIntersection2
impl Send for CertifiedCurveIntersection2
impl Sync for CertifiedCurveIntersection2
impl Unpin for CertifiedCurveIntersection2
impl UnwindSafe for CertifiedCurveIntersection2
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more