#[non_exhaustive]pub enum DecomposeError {
RaggedIndices(usize),
IndexOutOfRange(usize, u32),
NotASolid {
boundary: usize,
non_manifold: usize,
},
InvalidBound(Scalar),
SplitFailed(String),
BudgetExceeded {
limit: usize,
},
}Expand description
Why a decomposition could not be produced.
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.
RaggedIndices(usize)
The index buffer is not a whole number of triangles.
IndexOutOfRange(usize, u32)
A triangle references a vertex that does not exist.
NotASolid
The input is not a closed two-manifold solid.
Refused rather than decomposed: the parts of an open surface do not have a union that reproduces it, so any answer would be a fiction.
Fields
InvalidBound(Scalar)
A concavity bound must be a positive, finite length.
SplitFailed(String)
A splitter failed to cut a part.
BudgetExceeded
Decomposition did not converge within the part budget.
Reported rather than returning a partial decomposition, whose union would silently differ from the input.
Trait Implementations§
Source§impl Clone for DecomposeError
impl Clone for DecomposeError
Source§impl Debug for DecomposeError
impl Debug for DecomposeError
Source§impl Display for DecomposeError
impl Display for DecomposeError
Source§impl Error for DecomposeError
impl Error for DecomposeError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for DecomposeError
impl PartialEq for DecomposeError
impl StructuralPartialEq for DecomposeError
Auto Trait Implementations§
impl Freeze for DecomposeError
impl RefUnwindSafe for DecomposeError
impl Send for DecomposeError
impl Sync for DecomposeError
impl Unpin for DecomposeError
impl UnsafeUnpin for DecomposeError
impl UnwindSafe for DecomposeError
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