Struct heron::rapier_plugin::rapier2d::prelude::nalgebra::Translation [−][src]
#[repr(C)]pub struct Translation<T, const D: usize> {
pub vector: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>,
}
Expand description
A translation.
Fields
vector: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
The translation coordinates, i.e., how much is added to a point’s coordinates when it is translated.
Implementations
pub fn from_vector(
vector: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Translation<T, D>
👎 Deprecated: Use ::from
instead.
pub fn from_vector(
vector: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Translation<T, D>
Use ::from
instead.
Creates a new translation from the given vector.
Inverts self
.
Example
let t = Translation3::new(1.0, 2.0, 3.0);
assert_eq!(t * t.inverse(), Translation3::identity());
assert_eq!(t.inverse() * t, Translation3::identity());
// Work in all dimensions.
let t = Translation2::new(1.0, 2.0);
assert_eq!(t * t.inverse(), Translation2::identity());
assert_eq!(t.inverse() * t, Translation2::identity());
pub fn to_homogeneous(
&self
) -> Matrix<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer> where
T: Zero + One,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
pub fn to_homogeneous(
&self
) -> Matrix<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer> where
T: Zero + One,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
Converts this translation into its equivalent homogeneous transformation matrix.
Example
let t = Translation3::new(10.0, 20.0, 30.0);
let expected = Matrix4::new(1.0, 0.0, 0.0, 10.0,
0.0, 1.0, 0.0, 20.0,
0.0, 0.0, 1.0, 30.0,
0.0, 0.0, 0.0, 1.0);
assert_eq!(t.to_homogeneous(), expected);
let t = Translation2::new(10.0, 20.0);
let expected = Matrix3::new(1.0, 0.0, 10.0,
0.0, 1.0, 20.0,
0.0, 0.0, 1.0);
assert_eq!(t.to_homogeneous(), expected);
Inverts self
in-place.
Example
let t = Translation3::new(1.0, 2.0, 3.0);
let mut inv_t = Translation3::new(1.0, 2.0, 3.0);
inv_t.inverse_mut();
assert_eq!(t * inv_t, Translation3::identity());
assert_eq!(inv_t * t, Translation3::identity());
// Work in all dimensions.
let t = Translation2::new(1.0, 2.0);
let mut inv_t = Translation2::new(1.0, 2.0);
inv_t.inverse_mut();
assert_eq!(t * inv_t, Translation2::identity());
assert_eq!(inv_t * t, Translation2::identity());
Translate the given point.
This is the same as the multiplication self * pt
.
Example
let t = Translation3::new(1.0, 2.0, 3.0);
let transformed_point = t.transform_point(&Point3::new(4.0, 5.0, 6.0));
assert_eq!(transformed_point, Point3::new(5.0, 7.0, 9.0));
Translate the given point by the inverse of this translation.
Example
let t = Translation3::new(1.0, 2.0, 3.0);
let transformed_point = t.inverse_transform_point(&Point3::new(4.0, 5.0, 6.0));
assert_eq!(transformed_point, Point3::new(3.0, 3.0, 3.0));
Creates a new identity translation.
Example
let t = Translation2::identity();
let p = Point2::new(1.0, 2.0);
assert_eq!(t * p, p);
// Works in all dimensions.
let t = Translation3::identity();
let p = Point3::new(1.0, 2.0, 3.0);
assert_eq!(t * p, p);
pub fn cast<To>(self) -> Translation<To, D> where
To: Scalar,
Translation<To, D>: SupersetOf<Translation<T, D>>,
pub fn cast<To>(self) -> Translation<To, D> where
To: Scalar,
Translation<To, D>: SupersetOf<Translation<T, D>>,
Cast the components of self
to another type.
Example
let tra = Translation2::new(1.0f64, 2.0);
let tra2 = tra.cast::<f32>();
assert_eq!(tra2, Translation2::new(1.0f32, 2.0));
Initializes this translation from its components.
Example
let t = Translation1::new(1.0);
assert!(t.vector.x == 1.0);
Initializes this translation from its components.
Example
let t = Translation2::new(1.0, 2.0);
assert!(t.vector.x == 1.0 && t.vector.y == 2.0);
Initializes this translation from its components.
Example
let t = Translation3::new(1.0, 2.0, 3.0);
assert!(t.vector.x == 1.0 && t.vector.y == 2.0 && t.vector.z == 3.0);
Initializes this translation from its components.
Example
let t = Translation4::new(1.0, 2.0, 3.0, 4.0);
assert!(t.vector.x == 1.0 && t.vector.y == 2.0 && t.vector.z == 3.0 && t.vector.w == 4.0);
Initializes this translation from its components.
Example
let t = Translation5::new(1.0, 2.0, 3.0, 4.0, 5.0);
assert!(t.vector.x == 1.0 && t.vector.y == 2.0 && t.vector.z == 3.0 && t.vector.w == 4.0 && t.vector.a == 5.0);
Initializes this translation from its components.
Example
let t = Translation6::new(1.0, 2.0, 3.0, 4.0, 5.0, 6.0);
assert!(t.vector.x == 1.0 && t.vector.y == 2.0 && t.vector.z == 3.0 && t.vector.w == 4.0 && t.vector.a == 5.0 && t.vector.b == 6.0);
Trait Implementations
impl<T, const D: usize> AbsDiffEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + AbsDiffEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Clone,
impl<T, const D: usize> AbsDiffEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + AbsDiffEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Clone,
type Epsilon = <T as AbsDiffEq<T>>::Epsilon
type Epsilon = <T as AbsDiffEq<T>>::Epsilon
Used for specifying relative comparisons.
The default tolerance to use when testing values that are close together. Read more
pub fn abs_diff_eq(
&self,
other: &Translation<T, D>,
epsilon: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon
) -> bool
pub fn abs_diff_eq(
&self,
other: &Translation<T, D>,
epsilon: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon
) -> bool
A test for equality that uses the absolute difference to compute the approximate equality of two numbers. Read more
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
The inverse of [AbsDiffEq::abs_diff_eq
].
Mutably dereferences the value.
Mutably dereferences the value.
Mutably dereferences the value.
Mutably dereferences the value.
Mutably dereferences the value.
Mutably dereferences the value.
impl<'a, 'b, T> Div<&'a Unit<DualQuaternion<T>>> for &'b Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Div<&'a Unit<DualQuaternion<T>>> for &'b Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'a Unit<DualQuaternion<T>>
) -> <&'b Translation<T, 3_usize> as Div<&'a Unit<DualQuaternion<T>>>>::Output
pub fn div(
self,
rhs: &'a Unit<DualQuaternion<T>>
) -> <&'b Translation<T, 3_usize> as Div<&'a Unit<DualQuaternion<T>>>>::Output
Performs the /
operation. Read more
impl<'b, T, C, const D: usize> Div<&'b Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'b, T, C, const D: usize> Div<&'b Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
impl<'a, 'b, T, C, const D: usize> Div<&'b Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, 'b, T, C, const D: usize> Div<&'b Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
impl<'b, T> Div<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Div<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Div<&'b Translation<T, 3_usize>>>::Output
pub fn div(
self,
rhs: &'b Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Div<&'b Translation<T, 3_usize>>>::Output
Performs the /
operation. Read more
impl<'a, 'b, T> Div<&'b Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Div<&'b Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Div<&'b Translation<T, 3_usize>>>::Output
pub fn div(
self,
rhs: &'b Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Div<&'b Translation<T, 3_usize>>>::Output
Performs the /
operation. Read more
impl<'b, T, C, const D: usize> Div<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'b, T, C, const D: usize> Div<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Translation<T, D>
) -> <Transform<T, C, D> as Div<&'b Translation<T, D>>>::Output
pub fn div(
self,
rhs: &'b Translation<T, D>
) -> <Transform<T, C, D> as Div<&'b Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'a, 'b, T, C, const D: usize> Div<&'b Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, 'b, T, C, const D: usize> Div<&'b Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Translation<T, D>
) -> <&'a Transform<T, C, D> as Div<&'b Translation<T, D>>>::Output
pub fn div(
self,
rhs: &'b Translation<T, D>
) -> <&'a Transform<T, C, D> as Div<&'b Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'b, T, const D: usize> Div<&'b Translation<T, D>> for Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'b, T, const D: usize> Div<&'b Translation<T, D>> for Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: &'b Translation<T, D>
) -> <Translation<T, D> as Div<&'b Translation<T, D>>>::Output
pub fn div(
self,
right: &'b Translation<T, D>
) -> <Translation<T, D> as Div<&'b Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'a, 'b, T, const D: usize> Div<&'b Translation<T, D>> for &'a Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, 'b, T, const D: usize> Div<&'b Translation<T, D>> for &'a Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: &'b Translation<T, D>
) -> <&'a Translation<T, D> as Div<&'b Translation<T, D>>>::Output
pub fn div(
self,
right: &'b Translation<T, D>
) -> <&'a Translation<T, D> as Div<&'b Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'b, T> Div<&'b Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Div<&'b Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Div<&'b Unit<DualQuaternion<T>>>>::Output
pub fn div(
self,
rhs: &'b Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Div<&'b Unit<DualQuaternion<T>>>>::Output
Performs the /
operation. Read more
impl<'a, T, C, const D: usize> Div<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, T, C, const D: usize> Div<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
impl<T, C, const D: usize> Div<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T, C, const D: usize> Div<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
impl<'a, T> Div<Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Div<Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Div<Translation<T, 3_usize>>>::Output
pub fn div(
self,
rhs: Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Div<Translation<T, 3_usize>>>::Output
Performs the /
operation. Read more
impl<T> Div<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Div<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Div<Translation<T, 3_usize>>>::Output
pub fn div(
self,
rhs: Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Div<Translation<T, 3_usize>>>::Output
Performs the /
operation. Read more
impl<T, const D: usize> Div<Translation<T, D>> for Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<T, const D: usize> Div<Translation<T, D>> for Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: Translation<T, D>
) -> <Translation<T, D> as Div<Translation<T, D>>>::Output
pub fn div(
self,
right: Translation<T, D>
) -> <Translation<T, D> as Div<Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<T, C, const D: usize> Div<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T, C, const D: usize> Div<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Translation<T, D>
) -> <Transform<T, C, D> as Div<Translation<T, D>>>::Output
pub fn div(
self,
rhs: Translation<T, D>
) -> <Transform<T, C, D> as Div<Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'a, T, const D: usize> Div<Translation<T, D>> for &'a Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, T, const D: usize> Div<Translation<T, D>> for &'a Translation<T, D> where
T: ClosedSub<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: Translation<T, D>
) -> <&'a Translation<T, D> as Div<Translation<T, D>>>::Output
pub fn div(
self,
right: Translation<T, D>
) -> <&'a Translation<T, D> as Div<Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'a, T, C, const D: usize> Div<Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, T, C, const D: usize> Div<Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Translation<T, D>
) -> <&'a Transform<T, C, D> as Div<Translation<T, D>>>::Output
pub fn div(
self,
rhs: Translation<T, D>
) -> <&'a Transform<T, C, D> as Div<Translation<T, D>>>::Output
Performs the /
operation. Read more
impl<'a, T> Div<Unit<DualQuaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Div<Unit<DualQuaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Unit<DualQuaternion<T>>
) -> <&'a Translation<T, 3_usize> as Div<Unit<DualQuaternion<T>>>>::Output
pub fn div(
self,
rhs: Unit<DualQuaternion<T>>
) -> <&'a Translation<T, 3_usize> as Div<Unit<DualQuaternion<T>>>>::Output
Performs the /
operation. Read more
impl<T> Div<Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Div<Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Div<Unit<DualQuaternion<T>>>>::Output
pub fn div(
self,
rhs: Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Div<Unit<DualQuaternion<T>>>>::Output
Performs the /
operation. Read more
impl<'b, T> DivAssign<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> DivAssign<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
Performs the /=
operation. Read more
impl<'b, T, C, const D: usize> DivAssign<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'b, T, C, const D: usize> DivAssign<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
Performs the /=
operation. Read more
impl<'b, T, const D: usize> DivAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub<T>,
impl<'b, T, const D: usize> DivAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub<T>,
Performs the /=
operation. Read more
impl<T> DivAssign<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> DivAssign<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
Performs the /=
operation. Read more
impl<T, C, const D: usize> DivAssign<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T, C, const D: usize> DivAssign<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
Performs the /=
operation. Read more
impl<T, const D: usize> DivAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub<T>,
impl<T, const D: usize> DivAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub<T>,
Performs the /=
operation. Read more
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
Performs the conversion.
impl<T, R, const D: usize> From<Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
impl<T, R, const D: usize> From<Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
Performs the conversion.
impl<T, const D: usize> From<Translation<T, D>> for Matrix<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer> where
T: Scalar + Zero + One,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
DefaultAllocator: Allocator<T, Const<D>, Const<1_usize>>,
impl<T, const D: usize> From<Translation<T, D>> for Matrix<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer> where
T: Scalar + Zero + One,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
DefaultAllocator: Allocator<T, Const<D>, Const<1_usize>>,
pub fn from(
t: Translation<T, D>
) -> Matrix<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
pub fn from(
t: Translation<T, D>
) -> Matrix<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
Performs the conversion.
impl<'a, 'b, T> Mul<&'a Unit<DualQuaternion<T>>> for &'b Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'a Unit<DualQuaternion<T>>> for &'b Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'a Unit<DualQuaternion<T>>
) -> <&'b Translation<T, 3_usize> as Mul<&'a Unit<DualQuaternion<T>>>>::Output
pub fn mul(
self,
rhs: &'a Unit<DualQuaternion<T>>
) -> <&'b Translation<T, 3_usize> as Mul<&'a Unit<DualQuaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Similarity<T, R, D>
) -> <Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output
pub fn mul(
self,
right: &'b Similarity<T, R, D>
) -> <Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Similarity<T, R, D>
) -> <&'a Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output
pub fn mul(
self,
right: &'b Similarity<T, R, D>
) -> <&'a Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output
Performs the *
operation. Read more
impl<'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
impl<'a, 'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, 'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
impl<'b, T> Mul<&'b Translation<T, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Translation<T, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'b Translation<T, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'b Translation<T, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Translation<T, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Translation<T, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Translation<T, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
pub fn mul(
self,
right: &'b Translation<T, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T> Mul<&'b Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'b Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
pub fn mul(
self,
rhs: &'b Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<'b, T> Mul<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
pub fn mul(
self,
rhs: &'b Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T> Mul<&'b Translation<T, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'b Translation<T, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Translation<T, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
pub fn mul(
self,
right: &'b Translation<T, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<&'b Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Isometry<T, R, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Isometry<T, R, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Translation<T, D>
) -> <Transform<T, C, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
rhs: &'b Translation<T, D>
) -> <Transform<T, C, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Translation<T, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Translation<T, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, 'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Translation<T, D>
) -> <&'a Transform<T, C, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
rhs: &'b Translation<T, D>
) -> <&'a Transform<T, C, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Translation<T, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Translation<T, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Isometry<T, R, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Isometry<T, R, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Unit<Complex<T>>> for Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Unit<Complex<T>>> for Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Mul<&'b Unit<DualQuaternion<T>>>>::Output
pub fn mul(
self,
rhs: &'b Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Mul<&'b Unit<DualQuaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Unit<Quaternion<T>>
) -> <&'a Translation<T, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
pub fn mul(
self,
right: &'b Unit<Quaternion<T>>
) -> <&'a Translation<T, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Unit<Quaternion<T>>
) -> <Translation<T, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
pub fn mul(
self,
right: &'b Unit<Quaternion<T>>
) -> <Translation<T, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T, const D: usize> Mul<Rotation<T, D>> for Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T, const D: usize> Mul<Rotation<T, D>> for Translation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Similarity<T, R, D>
) -> <Translation<T, D> as Mul<Similarity<T, R, D>>>::Output
pub fn mul(
self,
right: Similarity<T, R, D>
) -> <Translation<T, D> as Mul<Similarity<T, R, D>>>::Output
Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Similarity<T, R, D>
) -> <&'a Translation<T, D> as Mul<Similarity<T, R, D>>>::Output
pub fn mul(
self,
right: Similarity<T, R, D>
) -> <&'a Translation<T, D> as Mul<Similarity<T, R, D>>>::Output
Performs the *
operation. Read more
impl<T, C, const D: usize> Mul<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T, C, const D: usize> Mul<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
impl<'a, T, C, const D: usize> Mul<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, T, C, const D: usize> Mul<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
impl<'a, T> Mul<Translation<T, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Translation<T, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Translation<T, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Translation<T, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Translation<T, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Translation<T, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Translation<T, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
pub fn mul(
self,
right: Translation<T, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<T> Mul<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
pub fn mul(
self,
rhs: Translation<T, 3_usize>
) -> <Unit<DualQuaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<'a, T> Mul<Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Translation<T, 3_usize>> for &'a Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
pub fn mul(
self,
rhs: Translation<T, 3_usize>
) -> <&'a Unit<DualQuaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<T> Mul<Translation<T, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Translation<T, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Translation<T, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
pub fn mul(
self,
right: Translation<T, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<Translation<T, 3_usize>>>::Output
Performs the *
operation. Read more
impl<T, R, const D: usize> Mul<Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
pub fn mul(
self,
right: Translation<T, D>
) -> <Isometry<T, R, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
right: Translation<T, D>
) -> <Isometry<T, R, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, T, C, const D: usize> Mul<Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'a, T, C, const D: usize> Mul<Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Translation<T, D>
) -> <&'a Transform<T, C, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
rhs: Translation<T, D>
) -> <&'a Transform<T, C, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Similarity<T, R, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Similarity<T, R, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<T, const D: usize> Mul<Translation<T, D>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<T, const D: usize> Mul<Translation<T, D>> for Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Translation<T, D>
) -> <Translation<T, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
right: Translation<T, D>
) -> <Translation<T, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Translation<T, D> where
T: ClosedAdd<T> + Scalar,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>>,
ShapeConstraint: SameNumberOfColumns<Const<1_usize>, Const<1_usize>>,
<ShapeConstraint as SameNumberOfRows<Const<D>, Const<D>>>::Representative == Const<D>,
<ShapeConstraint as SameNumberOfColumns<Const<1_usize>, Const<1_usize>>>::Representative == Const<1_usize>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Translation<T, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Translation<T, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<T, C, const D: usize> Mul<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T, C, const D: usize> Mul<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategoryMul<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Translation<T, D>
) -> <Transform<T, C, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
rhs: Translation<T, D>
) -> <Transform<T, C, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Translation<T, D>
) -> <Similarity<T, R, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
right: Translation<T, D>
) -> <Similarity<T, R, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Isometry<T, R, D> as Mul<Translation<T, D>>>::Output
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Isometry<T, R, D> as Mul<Translation<T, D>>>::Output
Performs the *
operation. Read more
impl<T, const D: usize> Mul<Translation<T, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T, const D: usize> Mul<Translation<T, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Unit<Complex<T>>> for &'a Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Unit<Complex<T>>> for &'a Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Unit<Complex<T>>> for Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Unit<Complex<T>>> for Translation<T, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Unit<DualQuaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Mul<Unit<DualQuaternion<T>>>>::Output
pub fn mul(
self,
rhs: Unit<DualQuaternion<T>>
) -> <Translation<T, 3_usize> as Mul<Unit<DualQuaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Unit<DualQuaternion<T>>
type Output = Unit<DualQuaternion<T>>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Unit<DualQuaternion<T>>
) -> <&'a Translation<T, 3_usize> as Mul<Unit<DualQuaternion<T>>>>::Output
pub fn mul(
self,
rhs: Unit<DualQuaternion<T>>
) -> <&'a Translation<T, 3_usize> as Mul<Unit<DualQuaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Unit<Quaternion<T>>
) -> <&'a Translation<T, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
pub fn mul(
self,
right: Unit<Quaternion<T>>
) -> <&'a Translation<T, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
Performs the *
operation. Read more
impl<T> Mul<Unit<Quaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> Mul<Unit<Quaternion<T>>> for Translation<T, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
type Output = Isometry<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Unit<Quaternion<T>>
) -> <Translation<T, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
pub fn mul(
self,
right: Unit<Quaternion<T>>
) -> <Translation<T, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
Performs the *
operation. Read more
impl<'b, T> MulAssign<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T> MulAssign<&'b Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
Performs the *=
operation. Read more
impl<'b, T, const D: usize> MulAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd<T>,
impl<'b, T, const D: usize> MulAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd<T>,
Performs the *=
operation. Read more
impl<'b, T, R, const D: usize> MulAssign<&'b Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> MulAssign<&'b Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
Performs the *=
operation. Read more
impl<'b, T, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<'b, T, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
Performs the *=
operation. Read more
impl<'b, T, C, const D: usize> MulAssign<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<'b, T, C, const D: usize> MulAssign<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
Performs the *=
operation. Read more
impl<T> MulAssign<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
impl<T> MulAssign<Translation<T, 3_usize>> for Unit<DualQuaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
Performs the *=
operation. Read more
impl<T, const D: usize> MulAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd<T>,
impl<T, const D: usize> MulAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd<T>,
Performs the *=
operation. Read more
impl<T, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
Performs the *=
operation. Read more
impl<T, C, const D: usize> MulAssign<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T, C, const D: usize> MulAssign<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
C: TCategory,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
Performs the *=
operation. Read more
impl<T, R, const D: usize> MulAssign<Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
impl<T, R, const D: usize> MulAssign<Translation<T, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
Performs the *=
operation. Read more
Returns the multiplicative identity element of Self
, 1
. Read more
impl<T, const D: usize> PartialEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + PartialEq<T>,
impl<T, const D: usize> PartialEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + PartialEq<T>,
impl<T, const D: usize> RelativeEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + RelativeEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Clone,
impl<T, const D: usize> RelativeEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + RelativeEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Clone,
The default relative tolerance for testing values that are far-apart. Read more
pub fn relative_eq(
&self,
other: &Translation<T, D>,
epsilon: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon,
max_relative: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon
) -> bool
pub fn relative_eq(
&self,
other: &Translation<T, D>,
epsilon: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon,
max_relative: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon
) -> bool
A test for equality that uses a relative comparison if the values are far apart.
fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
The inverse of [RelativeEq::relative_eq
].
type Element = Translation<<T as SimdValue>::Element, D>
type Element = Translation<<T as SimdValue>::Element, D>
The type of the elements of each lane of this SIMD value.
Type of the result of comparing two SIMD values like self
.
Initializes an SIMD value with each lanes set to val
.
Extracts the i-th lane of self
. Read more
Extracts the i-th lane of self
without bound-checking.
Replaces the i-th lane of self
by val
. Read more
pub unsafe fn replace_unchecked(
&mut self,
i: usize,
val: <Translation<T, D> as SimdValue>::Element
)
pub unsafe fn replace_unchecked(
&mut self,
i: usize,
val: <Translation<T, D> as SimdValue>::Element
)
Replaces the i-th lane of self
by val
without bound-checking.
pub fn select(
self,
cond: <Translation<T, D> as SimdValue>::SimdBool,
other: Translation<T, D>
) -> Translation<T, D>
pub fn select(
self,
cond: <Translation<T, D> as SimdValue>::SimdBool,
other: Translation<T, D>
) -> Translation<T, D>
Merges self
and other
depending on the lanes of cond
. Read more
Applies a function to each lane of self
. Read more
impl<T1, T2, R, const D: usize> SubsetOf<Isometry<T2, R, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D>,
impl<T1, T2, R, const D: usize> SubsetOf<Isometry<T2, R, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D>,
The inclusion map: converts self
to the equivalent element of its superset.
Checks if element
is actually part of the subset Self
(and can be converted to it).
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T1, T2, const D: usize> SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T1, T2, const D: usize> SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
pub fn to_superset(
&self
) -> Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
pub fn to_superset(
&self
) -> Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
The inclusion map: converts self
to the equivalent element of its superset.
pub fn is_in_subset(
m: &Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
) -> bool
pub fn is_in_subset(
m: &Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
pub fn from_superset_unchecked(
m: &Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
) -> Translation<T1, D>
pub fn from_superset_unchecked(
m: &Matrix<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>
) -> Translation<T1, D>
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D>,
impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D>,
The inclusion map: converts self
to the equivalent element of its superset.
Checks if element
is actually part of the subset Self
(and can be converted to it).
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T1, T2, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
C: SuperTCategoryOf<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
impl<T1, T2, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
C: SuperTCategoryOf<TAffine>,
Const<D>: DimNameAdd<Const<1_usize>>,
DefaultAllocator: Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
The inclusion map: converts self
to the equivalent element of its superset.
Checks if element
is actually part of the subset Self
(and can be converted to it).
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T1, T2, const D: usize> SubsetOf<Translation<T2, D>> for Translation<T1, D> where
T1: Scalar,
T2: Scalar + SupersetOf<T1>,
impl<T1, T2, const D: usize> SubsetOf<Translation<T2, D>> for Translation<T1, D> where
T1: Scalar,
T2: Scalar + SupersetOf<T1>,
The inclusion map: converts self
to the equivalent element of its superset.
Checks if element
is actually part of the subset Self
(and can be converted to it).
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T1, T2> SubsetOf<Unit<DualQuaternion<T2>>> for Translation<T1, 3_usize> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
impl<T1, T2> SubsetOf<Unit<DualQuaternion<T2>>> for Translation<T1, 3_usize> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
The inclusion map: converts self
to the equivalent element of its superset.
Checks if element
is actually part of the subset Self
(and can be converted to it).
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
fn from_superset(element: &T) -> Option<Self>
fn from_superset(element: &T) -> Option<Self>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T, const D: usize> UlpsEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + UlpsEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Clone,
impl<T, const D: usize> UlpsEq<Translation<T, D>> for Translation<T, D> where
T: Scalar + UlpsEq<T>,
<T as AbsDiffEq<T>>::Epsilon: Clone,
The default ULPs to tolerate when testing values that are far-apart. Read more
pub fn ulps_eq(
&self,
other: &Translation<T, D>,
epsilon: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon,
max_ulps: u32
) -> bool
pub fn ulps_eq(
&self,
other: &Translation<T, D>,
epsilon: <Translation<T, D> as AbsDiffEq<Translation<T, D>>>::Epsilon,
max_ulps: u32
) -> bool
A test for equality that uses units in the last place (ULP) if the values are far apart.
Auto Trait Implementations
impl<T, const D: usize> RefUnwindSafe for Translation<T, D> where
T: RefUnwindSafe,
impl<T, const D: usize> Send for Translation<T, D> where
T: Send,
impl<T, const D: usize> Sync for Translation<T, D> where
T: Sync,
impl<T, const D: usize> Unpin for Translation<T, D> where
T: Unpin,
impl<T, const D: usize> UnwindSafe for Translation<T, D> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> DynHash for T where
T: DynEq + Hash,
impl<T> DynHash for T where
T: DynEq + Hash,
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more