Struct nalgebra::geometry::Translation [−][src]
Expand description
A translation.
Fields
vector: SVector<T, D>
The translation coordinates, i.e., how much is added to a point’s coordinates when it is translated.
Implementations
👎 Deprecated: Use ::from
instead.
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
) -> OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
T: Zero + One,
Const<D>: DimNameAdd<U1>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
pub fn to_homogeneous(
&self
) -> OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
T: Zero + One,
Const<D>: DimNameAdd<U1>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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: Scalar>(self) -> Translation<To, D> where
Translation<To, D>: SupersetOf<Self>,
pub fn cast<To: Scalar>(self) -> Translation<To, D> where
Translation<To, D>: SupersetOf<Self>,
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 = 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: Scalar + AbsDiffEq, const D: usize> AbsDiffEq<Translation<T, D>> for Translation<T, D> where
T::Epsilon: Clone,
impl<T: Scalar + AbsDiffEq, const D: usize> AbsDiffEq<Translation<T, D>> for Translation<T, D> where
T::Epsilon: Clone,
The default tolerance to use when testing values that are close together. Read more
A test for equality that uses the absolute difference to compute the approximate equality of two numbers. Read more
The inverse of AbsDiffEq::abs_diff_eq
.
impl<'a, T: Scalar, const D: usize> Deserialize<'a> for Translation<T, D> where
Owned<T, Const<D>>: Deserialize<'a>,
impl<'a, T: Scalar, const D: usize> Deserialize<'a> for Translation<T, D> where
Owned<T, Const<D>>: Deserialize<'a>,
fn deserialize<Des>(deserializer: Des) -> Result<Self, Des::Error> where
Des: Deserializer<'a>,
fn deserialize<Des>(deserializer: Des) -> Result<Self, Des::Error> where
Des: Deserializer<'a>,
Deserialize this value from the given Serde deserializer. 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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, const D: usize> Div<&'b Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, 'b, T: SimdRealField> Div<&'b Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Div<&'b Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<'b, T: SimdRealField> Div<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Div<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<'a, 'b, T, const D: usize> Div<&'b Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'a, 'b, T, const D: usize> Div<&'b Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<'b, T, const D: usize> Div<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'b, T, const D: usize> Div<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, const D: usize> Div<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the /
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<T, C, const D: usize> Div<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, const D: usize> Div<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, const D: usize> Div<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, const D: usize> Div<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T: SimdRealField> Div<Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Div<Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<T: SimdRealField> Div<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Div<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<'a, T, const D: usize> Div<Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'a, T, const D: usize> Div<Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<T, const D: usize> Div<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<T, const D: usize> Div<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the /
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, const D: usize> Div<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the /
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, const D: usize> Div<Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the /
operator.
Performs the /
operation. Read more
impl<'b, T: SimdRealField> DivAssign<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> DivAssign<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
Performs the /=
operation. Read more
impl<'b, T, const D: usize> DivAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
impl<'b, T, const D: usize> DivAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, const D: usize> DivAssign<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
Performs the /=
operation. Read more
impl<T: SimdRealField> DivAssign<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> DivAssign<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
Performs the /=
operation. Read more
impl<T, const D: usize> DivAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
impl<T, const D: usize> DivAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedSub,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, const D: usize> DivAssign<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
Performs the /=
operation. Read more
impl<T: Scalar + Zero + One, const D: usize> From<Translation<T, D>> for OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
Const<D>: DimNameAdd<U1>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T, Const<D>>,
impl<T: Scalar + Zero + One, const D: usize> From<Translation<T, D>> for OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
Const<D>: DimNameAdd<U1>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T, Const<D>>,
Performs the conversion.
Performs the conversion.
impl<T: SimdRealField, R: AbstractRotation<T, D>, const D: usize> From<Translation<T, D>> for Isometry<T, R, D>
impl<T: SimdRealField, R: AbstractRotation<T, D>, const D: usize> From<Translation<T, D>> for Isometry<T, R, D>
Performs the conversion.
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for Translation<T, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for Translation<T, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T: SimdRealField> Mul<&'b Translation<T, 2_usize>> for UnitComplex<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Translation<T, 2_usize>> for UnitComplex<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField> Mul<&'b Translation<T, 2_usize>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Translation<T, 2_usize>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Translation<T, 3_usize>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, const D: usize> Mul<&'b Translation<T, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, const D: usize> Mul<&'b Translation<T, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Translation<T, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Translation<T, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the *
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for Translation<T, 2> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for Translation<T, 2> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for &'a Translation<T, 2> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for &'a Translation<T, 2> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for Translation<T, 3> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for Translation<T, 3> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for &'a Translation<T, 3> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for &'a Translation<T, 3> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for Translation<T, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for Translation<T, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, const D: usize> Mul<Transform<T, C, D>> for Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, const D: usize> Mul<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, const D: usize> Mul<Transform<T, C, D>> for &'a Translation<T, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T: SimdRealField> Mul<Translation<T, 2_usize>> for UnitComplex<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Translation<T, 2_usize>> for UnitComplex<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField> Mul<Translation<T, 2_usize>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Translation<T, 2_usize>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField> Mul<Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Translation<T, 3_usize>> for &'a UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T: SimdRealField> Mul<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
type Output = UnitDualQuaternion<T>
type Output = UnitDualQuaternion<T>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T: SimdRealField> Mul<Translation<T, 3_usize>> for UnitQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Translation<T, 3_usize>> for UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField> Mul<Translation<T, 3_usize>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Translation<T, 3_usize>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T, const D: usize> Mul<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
impl<T, const D: usize> Mul<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<U1, U1, Representative = U1>,
type Output = Translation<T, D>
type Output = Translation<T, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, const D: usize> Mul<Translation<T, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, const D: usize> Mul<Translation<T, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Mul<Translation<T, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Mul<Translation<T, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, const D: usize> Mul<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the *
operator.
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, const D: usize> Mul<Translation<T, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
type Output = Transform<T, C::Representative, D>
type Output = Transform<T, C::Representative, D>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T: SimdRealField> Mul<Unit<Complex<T>>> for Translation<T, 2> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Unit<Complex<T>>> for Translation<T, 2> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField> Mul<Unit<Complex<T>>> for &'a Translation<T, 2> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Unit<Complex<T>>> for &'a Translation<T, 2> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitComplex<T>, 2>
type Output = Isometry<T, UnitComplex<T>, 2>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<T: SimdRealField> Mul<Unit<Quaternion<T>>> for Translation<T, 3> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Unit<Quaternion<T>>> for Translation<T, 3> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'a, T: SimdRealField> Mul<Unit<Quaternion<T>>> for &'a Translation<T, 3> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Unit<Quaternion<T>>> for &'a Translation<T, 3> where
T::Element: SimdRealField,
type Output = Isometry<T, UnitQuaternion<T>, 3>
type Output = Isometry<T, UnitQuaternion<T>, 3>
The resulting type after applying the *
operator.
Performs the *
operation. Read more
impl<'b, T: SimdRealField> MulAssign<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> MulAssign<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::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,
impl<'b, T, const D: usize> MulAssign<&'b Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
Performs the *=
operation. Read more
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
Performs the *=
operation. Read more
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, const D: usize> MulAssign<&'b Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
Performs the *=
operation. Read more
impl<T: SimdRealField> MulAssign<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> MulAssign<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
T::Element: SimdRealField,
Performs the *=
operation. Read more
impl<T, const D: usize> MulAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
impl<T, const D: usize> MulAssign<Translation<T, D>> for Translation<T, D> where
T: Scalar + ClosedAdd,
Performs the *=
operation. Read more
impl<T: SimdRealField, R, const D: usize> MulAssign<Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> MulAssign<Translation<T, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
Performs the *=
operation. Read more
impl<T: SimdRealField, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
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 + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, const D: usize> MulAssign<Translation<T, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
Performs the *=
operation. Read more
impl<T: Scalar + RelativeEq, const D: usize> RelativeEq<Translation<T, D>> for Translation<T, D> where
T::Epsilon: Clone,
impl<T: Scalar + RelativeEq, const D: usize> RelativeEq<Translation<T, D>> for Translation<T, D> where
T::Epsilon: Clone,
The default relative tolerance for testing values that are far-apart. Read more
A test for equality that uses a relative comparison if the values are far apart.
The inverse of RelativeEq::relative_eq
.
type Element = Translation<T::Element, D>
type Element = Translation<T::Element, D>
The type of the elements of each lane of this SIMD value.
Extracts the i-th lane of self
without bound-checking.
Replaces the i-th lane of self
by val
. Read more
Replaces the i-th lane of self
by val
without bound-checking.
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.
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<U1>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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<U1>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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).
fn from_superset_unchecked(
m: &OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
) -> Self
fn from_superset_unchecked(
m: &OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
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.
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<U1>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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<U1>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
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.
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
impl<T: Scalar + UlpsEq, const D: usize> UlpsEq<Translation<T, D>> for Translation<T, D> where
T::Epsilon: Clone,
impl<T: Scalar + UlpsEq, const D: usize> UlpsEq<Translation<T, D>> for Translation<T, D> where
T::Epsilon: Clone,
The default ULPs to tolerate when testing values that are far-apart. Read more
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
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
Checks if self
is actually part of its subset T
(and can be converted to it).
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
The inclusion map: converts self
to the equivalent element of its superset.