#[non_exhaustive]pub struct LinearTransformMeasurements {
pub classification: LinearTransformClassification,
pub axis_lengths: Option<[f64; 3]>,
pub determinant: Option<f64>,
pub orientation: Option<LinearTransformOrientation>,
pub uniform_scale: Option<f64>,
}Expand description
Deterministic facts derived from the linear 3x3 part of an affine matrix.
Numeric fields are present for every finite observation and absent only for
LinearTransformClassification::NonFinite. uniform_scale is present
when the columns are mutually orthogonal and have one common length,
including reflected uniform transforms. Derived numeric fields use f64
so determinant products remain representable across finite f32 matrices.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.classification: LinearTransformClassificationStable transform class.
axis_lengths: Option<[f64; 3]>Lengths of the X, Y, and Z matrix columns.
determinant: Option<f64>Determinant of the linear 3x3 matrix.
orientation: Option<LinearTransformOrientation>Determinant sign, using the same relative singularity tolerance as the classification.
uniform_scale: Option<f64>Common orthogonal axis length when one is well-defined.
Trait Implementations§
Source§impl Clone for LinearTransformMeasurements
impl Clone for LinearTransformMeasurements
Source§fn clone(&self) -> LinearTransformMeasurements
fn clone(&self) -> LinearTransformMeasurements
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for LinearTransformMeasurements
Source§impl Debug for LinearTransformMeasurements
impl Debug for LinearTransformMeasurements
Source§impl<'de> Deserialize<'de> for LinearTransformMeasurements
impl<'de> Deserialize<'de> for LinearTransformMeasurements
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for LinearTransformMeasurements
Auto Trait Implementations§
impl Freeze for LinearTransformMeasurements
impl RefUnwindSafe for LinearTransformMeasurements
impl Send for LinearTransformMeasurements
impl Sync for LinearTransformMeasurements
impl Unpin for LinearTransformMeasurements
impl UnsafeUnpin for LinearTransformMeasurements
impl UnwindSafe for LinearTransformMeasurements
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