Enum SurfaceInversionRefusal
#[non_exhaustive]pub enum SurfaceInversionRefusal {
OffSurface {
distance_lower_bound: f64,
},
Ambiguous {
candidates: Vec<SurfaceParameterBox>,
},
Unresolved {
reason: SurfaceProjectionUnresolvedReason,
},
}Expand description
Why a sound inversion query did not yield unique parameters.
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.
OffSurface
The point is off the surface by more than the linear tolerance.
Reported with the certified LOWER bound, so this is a proof of separation rather than one representative evaluation missing.
Ambiguous
Several disjoint parameter regions attain the same minimum distance.
A pole, a seam, or a self-touching patch. The retained cover is returned so callers can inspect the ambiguity instead of guessing.
Fields
§
candidates: Vec<SurfaceParameterBox>Every closed box that may contain a global minimizer.
Unresolved
The search stayed sound but could not resolve to the requested accuracy within the configured budget.
Fields
§
reason: SurfaceProjectionUnresolvedReasonExact reason the underlying projection stopped.
Trait Implementations§
§impl Clone for SurfaceInversionRefusal
impl Clone for SurfaceInversionRefusal
§fn clone(&self) -> SurfaceInversionRefusal
fn clone(&self) -> SurfaceInversionRefusal
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 SurfaceInversionRefusal
impl Debug for SurfaceInversionRefusal
§impl PartialEq for SurfaceInversionRefusal
impl PartialEq for SurfaceInversionRefusal
impl StructuralPartialEq for SurfaceInversionRefusal
Auto Trait Implementations§
impl Freeze for SurfaceInversionRefusal
impl RefUnwindSafe for SurfaceInversionRefusal
impl Send for SurfaceInversionRefusal
impl Sync for SurfaceInversionRefusal
impl Unpin for SurfaceInversionRefusal
impl UnwindSafe for SurfaceInversionRefusal
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