#[repr(C)]pub struct Transform<N: Real, D: DimNameAdd<U1>, C: TCategory>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,{ /* private fields */ }
Expand description
A transformation matrix in homogeneous coordinates.
It is stored as a matrix with dimensions (D + 1, D + 1)
, e.g., it stores a 4x4 matrix for a
3D transformation.
Implementations§
source§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
sourcepub fn from_matrix_unchecked(matrix: MatrixN<N, DimNameSum<D, U1>>) -> Self
pub fn from_matrix_unchecked(matrix: MatrixN<N, DimNameSum<D, U1>>) -> Self
Creates a new transformation from the given homogeneous matrix. The transformation category
of Self
is not checked to be verified by the given matrix.
sourcepub fn into_inner(self) -> MatrixN<N, DimNameSum<D, U1>>
pub fn into_inner(self) -> MatrixN<N, DimNameSum<D, U1>>
Retrieves the underlying matrix.
Examples
let m = Matrix3::new(1.0, 2.0, 0.0,
3.0, 4.0, 0.0,
0.0, 0.0, 1.0);
let t = Transform2::from_matrix_unchecked(m);
assert_eq!(t.into_inner(), m);
sourcepub fn unwrap(self) -> MatrixN<N, DimNameSum<D, U1>>
👎Deprecated: use .into_inner()
instead
pub fn unwrap(self) -> MatrixN<N, DimNameSum<D, U1>>
.into_inner()
insteadRetrieves the underlying matrix. Deprecated: Use Transform::into_inner instead.
sourcepub fn matrix(&self) -> &MatrixN<N, DimNameSum<D, U1>>
pub fn matrix(&self) -> &MatrixN<N, DimNameSum<D, U1>>
A reference to the underlying matrix.
Examples
let m = Matrix3::new(1.0, 2.0, 0.0,
3.0, 4.0, 0.0,
0.0, 0.0, 1.0);
let t = Transform2::from_matrix_unchecked(m);
assert_eq!(*t.matrix(), m);
sourcepub fn matrix_mut_unchecked(&mut self) -> &mut MatrixN<N, DimNameSum<D, U1>>
pub fn matrix_mut_unchecked(&mut self) -> &mut MatrixN<N, DimNameSum<D, U1>>
A mutable reference to the underlying matrix.
It is _unchecked
because direct modifications of this matrix may break invariants
identified by this transformation category.
Examples
let m = Matrix3::new(1.0, 2.0, 0.0,
3.0, 4.0, 0.0,
0.0, 0.0, 1.0);
let mut t = Transform2::from_matrix_unchecked(m);
t.matrix_mut_unchecked().m12 = 42.0;
t.matrix_mut_unchecked().m23 = 90.0;
let expected = Matrix3::new(1.0, 42.0, 0.0,
3.0, 4.0, 90.0,
0.0, 0.0, 1.0);
assert_eq!(*t.matrix(), expected);
sourcepub fn set_category<CNew: SuperTCategoryOf<C>>(self) -> Transform<N, D, CNew>
pub fn set_category<CNew: SuperTCategoryOf<C>>(self) -> Transform<N, D, CNew>
Sets the category of this transform.
This can be done only if the new category is more general than the current one, e.g., a
transform with category TProjective
cannot be converted to a transform with category
TAffine
because not all projective transformations are affine (the other way-round is
valid though).
sourcepub fn clone_owned(&self) -> Transform<N, D, C>
👎Deprecated: This method is redundant with automatic Copy
and the .clone()
method and will be removed in a future release.
pub fn clone_owned(&self) -> Transform<N, D, C>
Copy
and the .clone()
method and will be removed in a future release.Clones this transform into one that owns its data.
sourcepub fn to_homogeneous(&self) -> MatrixN<N, DimNameSum<D, U1>>
pub fn to_homogeneous(&self) -> MatrixN<N, DimNameSum<D, U1>>
Converts this transform into its equivalent homogeneous transformation matrix.
Examples
let m = Matrix3::new(1.0, 2.0, 0.0,
3.0, 4.0, 0.0,
0.0, 0.0, 1.0);
let t = Transform2::from_matrix_unchecked(m);
assert_eq!(t.into_inner(), m);
sourcepub fn try_inverse(self) -> Option<Transform<N, D, C>>
pub fn try_inverse(self) -> Option<Transform<N, D, C>>
Attempts to invert this transformation. You may use .inverse
instead of this
transformation has a subcategory of TProjective
(i.e. if it is a Projective{2,3}
or Affine{2,3}
).
Examples
let m = Matrix3::new(2.0, 2.0, -0.3,
3.0, 4.0, 0.1,
0.0, 0.0, 1.0);
let t = Transform2::from_matrix_unchecked(m);
let inv_t = t.try_inverse().unwrap();
assert_relative_eq!(t * inv_t, Transform2::identity());
assert_relative_eq!(inv_t * t, Transform2::identity());
// Non-invertible case.
let m = Matrix3::new(0.0, 2.0, 1.0,
3.0, 0.0, 5.0,
0.0, 0.0, 0.0);
let t = Transform2::from_matrix_unchecked(m);
assert!(t.try_inverse().is_none());
sourcepub fn inverse(self) -> Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
pub fn inverse(self) -> Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
Inverts this transformation. Use .try_inverse
if this transform has the TGeneral
category (i.e., a Transform{2,3}
may not be invertible).
Examples
let m = Matrix3::new(2.0, 2.0, -0.3,
3.0, 4.0, 0.1,
0.0, 0.0, 1.0);
let proj = Projective2::from_matrix_unchecked(m);
let inv_t = proj.inverse();
assert_relative_eq!(proj * inv_t, Projective2::identity());
assert_relative_eq!(inv_t * proj, Projective2::identity());
sourcepub fn try_inverse_mut(&mut self) -> bool
pub fn try_inverse_mut(&mut self) -> bool
Attempts to invert this transformation in-place. You may use .inverse_mut
instead of this
transformation has a subcategory of TProjective
.
Examples
let m = Matrix3::new(2.0, 2.0, -0.3,
3.0, 4.0, 0.1,
0.0, 0.0, 1.0);
let t = Transform2::from_matrix_unchecked(m);
let mut inv_t = t;
assert!(inv_t.try_inverse_mut());
assert_relative_eq!(t * inv_t, Transform2::identity());
assert_relative_eq!(inv_t * t, Transform2::identity());
// Non-invertible case.
let m = Matrix3::new(0.0, 2.0, 1.0,
3.0, 0.0, 5.0,
0.0, 0.0, 0.0);
let mut t = Transform2::from_matrix_unchecked(m);
assert!(!t.try_inverse_mut());
sourcepub fn inverse_mut(&mut self)where
C: SubTCategoryOf<TProjective>,
pub fn inverse_mut(&mut self)where
C: SubTCategoryOf<TProjective>,
Inverts this transformation in-place. Use .try_inverse_mut
if this transform has the
TGeneral
category (it may not be invertible).
Examples
let m = Matrix3::new(2.0, 2.0, -0.3,
3.0, 4.0, 0.1,
0.0, 0.0, 1.0);
let proj = Projective2::from_matrix_unchecked(m);
let mut inv_t = proj;
inv_t.inverse_mut();
assert_relative_eq!(proj * inv_t, Projective2::identity());
assert_relative_eq!(inv_t * proj, Projective2::identity());
source§impl<N: Real, D: DimNameAdd<U1>> Transform<N, D, TGeneral>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>> Transform<N, D, TGeneral>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
sourcepub fn matrix_mut(&mut self) -> &mut MatrixN<N, DimNameSum<D, U1>>
pub fn matrix_mut(&mut self) -> &mut MatrixN<N, DimNameSum<D, U1>>
A mutable reference to underlying matrix. Use .matrix_mut_unchecked
instead if this
transformation category is not TGeneral
.
source§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
sourcepub fn identity() -> Self
pub fn identity() -> Self
Creates a new identity transform.
Example
let pt = Point2::new(1.0, 2.0);
let t = Projective2::identity();
assert_eq!(t * pt, pt);
let aff = Affine2::identity();
assert_eq!(aff * pt, pt);
let aff = Transform2::identity();
assert_eq!(aff * pt, pt);
// Also works in 3D.
let pt = Point3::new(1.0, 2.0, 3.0);
let t = Projective3::identity();
assert_eq!(t * pt, pt);
let aff = Affine3::identity();
assert_eq!(aff * pt, pt);
let aff = Transform3::identity();
assert_eq!(aff * pt, pt);
Trait Implementations§
source§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> AbsDiffEq<Transform<N, D, C>> for Transform<N, D, C>where
N::Epsilon: Copy,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> AbsDiffEq<Transform<N, D, C>> for Transform<N, D, C>where
N::Epsilon: Copy,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn default_epsilon() -> Self::Epsilon
fn default_epsilon() -> Self::Epsilon
source§impl<N: Real, D: DimNameAdd<U1>, C> AbstractMagma<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> AbstractMagma<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Real, D: DimNameAdd<U1>, C> AbstractMonoid<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> AbstractMonoid<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> boolwhere
Self: RelativeEq<Self>,
fn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> boolwhere
Self: RelativeEq<Self>,
source§impl<N: Real, D: DimNameAdd<U1>, C> AbstractQuasigroup<Multiplicative> for Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> AbstractQuasigroup<Multiplicative> for Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> boolwhere
Self: RelativeEq<Self>,
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> boolwhere
Self: RelativeEq<Self>,
true
if latin squareness holds for the given arguments. Approximate
equality is used for verifications. Read moresource§impl<N: Real, D: DimNameAdd<U1>, C> AbstractSemigroup<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> AbstractSemigroup<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn prop_is_associative_approx(args: (Self, Self, Self)) -> boolwhere
Self: RelativeEq<Self>,
fn prop_is_associative_approx(args: (Self, Self, Self)) -> boolwhere
Self: RelativeEq<Self>,
true
if associativity holds for the given arguments. Approximate equality is used
for verifications. Read moresource§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> Clone for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> Clone for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Debug + Real, D: Debug + DimNameAdd<U1>, C: Debug + TCategory> Debug for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Debug + Real, D: Debug + DimNameAdd<U1>, C: Debug + TCategory> Debug for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<&'b Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<&'b Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, C: TCategoryMul<TAffine>> Div<&'b Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<'a, 'b, N, C: TCategoryMul<TAffine>> Div<&'b Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<'b, N, C: TCategoryMul<TAffine>> Div<&'b Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<'b, N, C: TCategoryMul<TAffine>> Div<&'b Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<'a, 'b, N, C: TCategoryMul<TAffine>> Div<&'b Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'a, 'b, N, C: TCategoryMul<TAffine>> Div<&'b Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<'b, N, C: TCategoryMul<TAffine>> Div<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'b, N, C: TCategoryMul<TAffine>> Div<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: SubTCategoryOf<TProjective>> Div<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'a, N, C: TCategoryMul<TAffine>> Div<Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<'a, N, C: TCategoryMul<TAffine>> Div<Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<N, C: TCategoryMul<TAffine>> Div<Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<N, C: TCategoryMul<TAffine>> Div<Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Div<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<'a, N, C: TCategoryMul<TAffine>> Div<Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'a, N, C: TCategoryMul<TAffine>> Div<Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<N, C: TCategoryMul<TAffine>> Div<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<N, C: TCategoryMul<TAffine>> Div<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
/
operator.source§impl<'b, N, D: DimNameAdd<U1>, C: TCategory> DivAssign<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> DivAssign<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
source§fn div_assign(&mut self, rhs: &'b Rotation<N, D>)
fn div_assign(&mut self, rhs: &'b Rotation<N, D>)
/=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, CA: SuperTCategoryOf<CB>, CB: SubTCategoryOf<TProjective>> DivAssign<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, CA: SuperTCategoryOf<CB>, CB: SubTCategoryOf<TProjective>> DivAssign<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn div_assign(&mut self, rhs: &'b Transform<N, D, CB>)
fn div_assign(&mut self, rhs: &'b Transform<N, D, CB>)
/=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, C: TCategory> DivAssign<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> DivAssign<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn div_assign(&mut self, rhs: &'b Translation<N, D>)
fn div_assign(&mut self, rhs: &'b Translation<N, D>)
/=
operation. Read moresource§impl<'b, N, C: TCategory> DivAssign<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'b, N, C: TCategory> DivAssign<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
source§fn div_assign(&mut self, rhs: &'b UnitQuaternion<N>)
fn div_assign(&mut self, rhs: &'b UnitQuaternion<N>)
/=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory> DivAssign<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
impl<N, D: DimNameAdd<U1>, C: TCategory> DivAssign<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
source§fn div_assign(&mut self, rhs: Rotation<N, D>)
fn div_assign(&mut self, rhs: Rotation<N, D>)
/=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, CA: SuperTCategoryOf<CB>, CB: SubTCategoryOf<TProjective>> DivAssign<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, CA: SuperTCategoryOf<CB>, CB: SubTCategoryOf<TProjective>> DivAssign<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn div_assign(&mut self, rhs: Transform<N, D, CB>)
fn div_assign(&mut self, rhs: Transform<N, D, CB>)
/=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory> DivAssign<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategory> DivAssign<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn div_assign(&mut self, rhs: Translation<N, D>)
fn div_assign(&mut self, rhs: Translation<N, D>)
/=
operation. Read moresource§impl<N, C: TCategory> DivAssign<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<N, C: TCategory> DivAssign<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
source§fn div_assign(&mut self, rhs: UnitQuaternion<N>)
fn div_assign(&mut self, rhs: UnitQuaternion<N>)
/=
operation. Read moresource§impl<N: Real, D: DimName, C> From<Transform<N, D, C>> for MatrixN<N, DimNameSum<D, U1>>where
D: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimName, C> From<Transform<N, D, C>> for MatrixN<N, DimNameSum<D, U1>>where
D: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Real, D: DimNameAdd<U1>, C> Identity<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> Identity<Multiplicative> for Transform<N, D, C>where
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Real, D, C: TCategory> Index<(usize, usize)> for Transform<N, D, C>where
D: DimName + DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D, C: TCategory> Index<(usize, usize)> for Transform<N, D, C>where
D: DimName + DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Real, D> IndexMut<(usize, usize)> for Transform<N, D, TGeneral>where
D: DimName + DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D> IndexMut<(usize, usize)> for Transform<N, D, TGeneral>where
D: DimName + DimNameAdd<U1>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Real, D: DimNameAdd<U1>, C> Inverse<Multiplicative> for Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> Inverse<Multiplicative> for Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Isometry<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Isometry<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Point<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Point<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Point<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> Mul<&'b Point<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for &'a Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for &'a Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<&'b Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<&'b Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'a, 'b, N, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<'a, 'b, N, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<'b, N, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<'b, N, C: TCategoryMul<TAffine>> Mul<&'b Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, 'b, N, C: TCategoryMul<TAffine>> Mul<&'b Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'a, 'b, N, C: TCategoryMul<TAffine>> Mul<&'b Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'b, N, C: TCategoryMul<TAffine>> Mul<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'b, N, C: TCategoryMul<TAffine>> Mul<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Isometry<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Isometry<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategory> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategory> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<N, D: DimNameAdd<U1>, C: TCategory> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategory> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategory> Mul<Point<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategory> Mul<Point<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
source§impl<N, D: DimNameAdd<U1>, C: TCategory> Mul<Point<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
impl<N, D: DimNameAdd<U1>, C: TCategory> Mul<Point<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
DefaultAllocator: Allocator<N, D, D>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Rotation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, D>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for &'a Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for &'a Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for &'a Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for &'a Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for Isometry<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for Rotation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Transform<N, D, C>> for Translation<N, D>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<Transform<N, D, CB>> for &'a Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, CA: TCategoryMul<CB>, CB: TCategory> Mul<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<'a, N, C: TCategoryMul<TAffine>> Mul<Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<'a, N, C: TCategoryMul<TAffine>> Mul<Transform<N, U3, C>> for &'a UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<N, C: TCategoryMul<TAffine>> Mul<Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
impl<N, C: TCategoryMul<TAffine>> Mul<Transform<N, U3, C>> for UnitQuaternion<N>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U4, U4>,
source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Translation<N, D>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>> Mul<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, N, C: TCategoryMul<TAffine>> Mul<Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'a, N, C: TCategoryMul<TAffine>> Mul<Unit<Quaternion<N>>> for &'a Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<N, C: TCategoryMul<TAffine>> Mul<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<N, C: TCategoryMul<TAffine>> Mul<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
§type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, U3, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'b, N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<&'b Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<&'b Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: &'b Isometry<N, D, R>)
fn mul_assign(&mut self, rhs: &'b Isometry<N, D, R>)
*=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, C: TCategory> MulAssign<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> MulAssign<&'b Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
source§fn mul_assign(&mut self, rhs: &'b Rotation<N, D>)
fn mul_assign(&mut self, rhs: &'b Rotation<N, D>)
*=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
*=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, CA: TCategory, CB: SubTCategoryOf<CA>> MulAssign<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, CA: TCategory, CB: SubTCategoryOf<CA>> MulAssign<&'b Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn mul_assign(&mut self, rhs: &'b Transform<N, D, CB>)
fn mul_assign(&mut self, rhs: &'b Transform<N, D, CB>)
*=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, C: TCategory> MulAssign<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory> MulAssign<&'b Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: &'b Translation<N, D>)
fn mul_assign(&mut self, rhs: &'b Translation<N, D>)
*=
operation. Read moresource§impl<'b, N, C: TCategory> MulAssign<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<'b, N, C: TCategory> MulAssign<&'b Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
source§fn mul_assign(&mut self, rhs: &'b UnitQuaternion<N>)
fn mul_assign(&mut self, rhs: &'b UnitQuaternion<N>)
*=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<Isometry<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: Isometry<N, D, R>)
fn mul_assign(&mut self, rhs: Isometry<N, D, R>)
*=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory> MulAssign<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
impl<N, D: DimNameAdd<U1>, C: TCategory> MulAssign<Rotation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, D>,
source§fn mul_assign(&mut self, rhs: Rotation<N, D>)
fn mul_assign(&mut self, rhs: Rotation<N, D>)
*=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
*=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, CA: TCategory, CB: SubTCategoryOf<CA>> MulAssign<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, CA: TCategory, CB: SubTCategoryOf<CA>> MulAssign<Transform<N, D, CB>> for Transform<N, D, CA>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn mul_assign(&mut self, rhs: Transform<N, D, CB>)
fn mul_assign(&mut self, rhs: Transform<N, D, CB>)
*=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory> MulAssign<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategory> MulAssign<Translation<N, D>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: Translation<N, D>)
fn mul_assign(&mut self, rhs: Translation<N, D>)
*=
operation. Read moresource§impl<N, C: TCategory> MulAssign<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
impl<N, C: TCategory> MulAssign<Unit<Quaternion<N>>> for Transform<N, U3, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, U4, U4> + Allocator<N, U4, U1>,
source§fn mul_assign(&mut self, rhs: UnitQuaternion<N>)
fn mul_assign(&mut self, rhs: UnitQuaternion<N>)
*=
operation. Read moresource§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> One for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> One for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> PartialEq<Transform<N, D, C>> for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> PartialEq<Transform<N, D, C>> for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C> ProjectiveTransformation<Point<N, D>> for Transform<N, D, C>where
N: Real,
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, D>,
impl<N, D: DimNameAdd<U1>, C> ProjectiveTransformation<Point<N, D>> for Transform<N, D, C>where
N: Real,
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, D>,
source§fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
source§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> RelativeEq<Transform<N, D, C>> for Transform<N, D, C>where
N::Epsilon: Copy,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> RelativeEq<Transform<N, D, C>> for Transform<N, D, C>where
N::Epsilon: Copy,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn default_max_relative() -> Self::Epsilon
fn default_max_relative() -> Self::Epsilon
source§impl<N1, N2, D: DimName, C> SubsetOf<Matrix<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> for Transform<N1, D, C>where
N1: Real + SubsetOf<N2>,
N2: Real,
C: TCategory,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
N1::Epsilon: Copy,
N2::Epsilon: Copy,
impl<N1, N2, D: DimName, C> SubsetOf<Matrix<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> for Transform<N1, D, C>where
N1: Real + SubsetOf<N2>,
N2: Real,
C: TCategory,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
N1::Epsilon: Copy,
N2::Epsilon: Copy,
source§fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
self
to the equivalent element of its superset.source§fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Isometry<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Isometry<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Transform<N2, D, C>
fn to_superset(&self) -> Transform<N2, D, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, D, C>) -> bool
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D, C> SubsetOf<Transform<N2, D, C>> for Rotation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D, D> + Allocator<N2, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D>,
impl<N1, N2, D, C> SubsetOf<Transform<N2, D, C>> for Rotation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D, D> + Allocator<N2, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D>,
source§fn to_superset(&self) -> Transform<N2, D, C>
fn to_superset(&self) -> Transform<N2, D, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, D, C>) -> bool
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Similarity<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Similarity<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Transform<N2, D, C>
fn to_superset(&self) -> Transform<N2, D, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, D, C>) -> bool
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D, C> SubsetOf<Transform<N2, D, C>> for Translation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N1, N2, D, C> SubsetOf<Transform<N2, D, C>> for Translation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn to_superset(&self) -> Transform<N2, D, C>
fn to_superset(&self) -> Transform<N2, D, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, D, C>) -> bool
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D: DimName, C1, C2> SubsetOf<Transform<N2, D, C2>> for Transform<N1, D, C1>where
N1: Real + SubsetOf<N2>,
N2: Real,
C1: TCategory,
C2: SuperTCategoryOf<C1>,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
N1::Epsilon: Copy,
N2::Epsilon: Copy,
impl<N1, N2, D: DimName, C1, C2> SubsetOf<Transform<N2, D, C2>> for Transform<N1, D, C1>where
N1: Real + SubsetOf<N2>,
N2: Real,
C1: TCategory,
C2: SuperTCategoryOf<C1>,
D: DimNameAdd<U1>,
DefaultAllocator: Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>>,
N1::Epsilon: Copy,
N2::Epsilon: Copy,
source§fn to_superset(&self) -> Transform<N2, D, C2>
fn to_superset(&self) -> Transform<N2, D, C2>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, D, C2>) -> bool
fn is_in_subset(t: &Transform<N2, D, C2>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, D, C2>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, D, C2>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, C> SubsetOf<Transform<N2, U2, C>> for UnitComplex<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
impl<N1, N2, C> SubsetOf<Transform<N2, U2, C>> for UnitComplex<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
source§fn to_superset(&self) -> Transform<N2, U2, C>
fn to_superset(&self) -> Transform<N2, U2, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, U2, C>) -> bool
fn is_in_subset(t: &Transform<N2, U2, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, U2, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, U2, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, C> SubsetOf<Transform<N2, U3, C>> for UnitQuaternion<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
impl<N1, N2, C> SubsetOf<Transform<N2, U3, C>> for UnitQuaternion<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
source§fn to_superset(&self) -> Transform<N2, U3, C>
fn to_superset(&self) -> Transform<N2, U3, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, U3, C>) -> bool
fn is_in_subset(t: &Transform<N2, U3, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, U3, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, U3, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N, D: DimNameAdd<U1>, C> Transformation<Point<N, D>> for Transform<N, D, C>where
N: Real,
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, D>,
impl<N, D: DimNameAdd<U1>, C> Transformation<Point<N, D>> for Transform<N, D, C>where
N: Real,
C: TCategory,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, DimNameSum<D, U1>> + Allocator<N, D, D> + Allocator<N, D>,
source§impl<N: Real, D: DimNameAdd<U1>, C: TCategory> UlpsEq<Transform<N, D, C>> for Transform<N, D, C>where
N::Epsilon: Copy,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C: TCategory> UlpsEq<Transform<N, D, C>> for Transform<N, D, C>where
N::Epsilon: Copy,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> AbstractGroup<Multiplicative> for Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1>, C> AbstractLoop<Multiplicative> for Transform<N, D, C>where
C: SubTCategoryOf<TProjective>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimNameAdd<U1> + Copy, C: TCategory> Copy for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
Owned<N, DimNameSum<D, U1>, DimNameSum<D, U1>>: Copy,
impl<N: Real + Eq, D: DimNameAdd<U1>, C: TCategory> Eq for Transform<N, D, C>where
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
Auto Trait Implementations§
impl<N, D, C> !RefUnwindSafe for Transform<N, D, C>
impl<N, D, C> !Send for Transform<N, D, C>
impl<N, D, C> !Sync for Transform<N, D, C>
impl<N, D, C> !Unpin for Transform<N, D, C>
impl<N, D, C> !UnwindSafe for Transform<N, D, C>
Blanket Implementations§
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).source§unsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.