Struct bevy_rapier2d::prelude::nalgebra::Similarity [−][src]
#[repr(C)]pub struct Similarity<T, R, const D: usize> where
T: Scalar, { pub isometry: Isometry<T, R, D>, // some fields omitted }
Expand description
A similarity, i.e., an uniform scaling, followed by a rotation, followed by a translation.
Fields
isometry: Isometry<T, R, D>
The part of this similarity that does not include the scaling factor.
Implementations
impl<T, R, const D: usize> Similarity<T, R, D> where
T: Scalar + Zero,
R: AbstractRotation<T, D>,
[src]
impl<T, R, const D: usize> Similarity<T, R, D> where
T: Scalar + Zero,
R: AbstractRotation<T, D>,
[src]pub fn from_parts(
translation: Translation<T, D>,
rotation: R,
scaling: T
) -> Similarity<T, R, D>
[src]
pub fn from_parts(
translation: Translation<T, D>,
rotation: R,
scaling: T
) -> Similarity<T, R, D>
[src]Creates a new similarity from its rotational and translational parts.
Creates a new similarity from its rotational and translational parts.
The scaling factor of this similarity transformation.
impl<T, R, const D: usize> Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Creates a new similarity that applies only a scaling factor.
Inverts self
.
Inverts self
in-place.
#[must_use = "Did you mean to use prepend_scaling_mut()?"]pub fn prepend_scaling(&self, scaling: T) -> Similarity<T, R, D>
[src]
#[must_use = "Did you mean to use prepend_scaling_mut()?"]pub fn prepend_scaling(&self, scaling: T) -> Similarity<T, R, D>
[src]The similarity transformation that applies a scaling factor scaling
before self
.
#[must_use = "Did you mean to use append_scaling_mut()?"]pub fn append_scaling(&self, scaling: T) -> Similarity<T, R, D>
[src]
#[must_use = "Did you mean to use append_scaling_mut()?"]pub fn append_scaling(&self, scaling: T) -> Similarity<T, R, D>
[src]The similarity transformation that applies a scaling factor scaling
after self
.
Sets self
to the similarity transformation that applies a scaling factor scaling
before self
.
Sets self
to the similarity transformation that applies a scaling factor scaling
after self
.
Appends to self
the given translation in-place.
Appends to self
the given rotation in-place.
Appends in-place to self
a rotation centered at the point p
, i.e., the rotation that
lets p
invariant.
Appends in-place to self
a rotation centered at the point with coordinates
self.translation
.
Transform the given point by this similarity.
This is the same as the multiplication self * pt
.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); let sim = Similarity3::new(translation, axisangle, 3.0); let transformed_point = sim.transform_point(&Point3::new(4.0, 5.0, 6.0)); assert_relative_eq!(transformed_point, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
pub fn transform_vector(
&self,
v: &Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
[src]
pub fn transform_vector(
&self,
v: &Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
[src]Transform the given vector by this similarity, ignoring the translational component.
This is the same as the multiplication self * t
.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); let sim = Similarity3::new(translation, axisangle, 3.0); let transformed_vector = sim.transform_vector(&Vector3::new(4.0, 5.0, 6.0)); assert_relative_eq!(transformed_vector, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
Transform the given point by the inverse of this similarity. This may be cheaper than inverting the similarity and then transforming the given point.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); let sim = Similarity3::new(translation, axisangle, 2.0); let transformed_point = sim.inverse_transform_point(&Point3::new(4.0, 5.0, 6.0)); assert_relative_eq!(transformed_point, Point3::new(-1.5, 1.5, 1.5), epsilon = 1.0e-5);
pub fn inverse_transform_vector(
&self,
v: &Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
[src]
pub fn inverse_transform_vector(
&self,
v: &Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
[src]Transform the given vector by the inverse of this similarity, ignoring the translational component. This may be cheaper than inverting the similarity and then transforming the given vector.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); let sim = Similarity3::new(translation, axisangle, 2.0); let transformed_vector = sim.inverse_transform_vector(&Vector3::new(4.0, 5.0, 6.0)); assert_relative_eq!(transformed_vector, Vector3::new(-3.0, 2.5, 2.0), epsilon = 1.0e-5);
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
R: SubsetOf<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>>,
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>,
[src]
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
R: SubsetOf<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>>,
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>,
[src]Converts this similarity into its equivalent homogeneous transformation matrix.
impl<T, R, const D: usize> Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Creates a new identity similarity.
Example
let sim = Similarity2::identity(); let pt = Point2::new(1.0, 2.0); assert_eq!(sim * pt, pt); let sim = Similarity3::identity(); let pt = Point3::new(1.0, 2.0, 3.0); assert_eq!(sim * pt, pt);
impl<T, R, const D: usize> Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]The similarity that applies the scaling factor scaling
, followed by the rotation r
with
its axis passing through the point p
.
Example
let rot = UnitComplex::new(f32::consts::FRAC_PI_2); let pt = Point2::new(3.0, 2.0); let sim = Similarity2::rotation_wrt_point(rot, pt, 4.0); assert_relative_eq!(sim * Point2::new(1.0, 2.0), Point2::new(-3.0, 3.0), epsilon = 1.0e-6);
impl<T> Similarity<T, Rotation<T, 2_usize>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Similarity<T, Rotation<T, 2_usize>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 2_usize, 1_usize>>,
angle: T,
scaling: T
) -> Similarity<T, Rotation<T, 2_usize>, 2_usize>
[src]
pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 2_usize, 1_usize>>,
angle: T,
scaling: T
) -> Similarity<T, Rotation<T, 2_usize>, 2_usize>
[src]Creates a new similarity from a translation, a rotation, and an uniform scaling factor.
Example
let sim = SimilarityMatrix2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2, 3.0); assert_relative_eq!(sim * Point2::new(2.0, 4.0), Point2::new(-11.0, 8.0), epsilon = 1.0e-6);
pub fn cast<To>(self) -> Similarity<To, Rotation<To, 2_usize>, 2_usize> where
To: Scalar,
Similarity<To, Rotation<To, 2_usize>, 2_usize>: SupersetOf<Similarity<T, Rotation<T, 2_usize>, 2_usize>>,
[src]
pub fn cast<To>(self) -> Similarity<To, Rotation<To, 2_usize>, 2_usize> where
To: Scalar,
Similarity<To, Rotation<To, 2_usize>, 2_usize>: SupersetOf<Similarity<T, Rotation<T, 2_usize>, 2_usize>>,
[src]Cast the components of self
to another type.
Example
let sim = SimilarityMatrix2::<f64>::identity(); let sim2 = sim.cast::<f32>(); assert_eq!(sim2, SimilarityMatrix2::<f32>::identity());
impl<T> Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 2_usize, 1_usize>>,
angle: T,
scaling: T
) -> Similarity<T, Unit<Complex<T>>, 2_usize>
[src]
pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 2_usize, 1_usize>>,
angle: T,
scaling: T
) -> Similarity<T, Unit<Complex<T>>, 2_usize>
[src]Creates a new similarity from a translation and a rotation angle.
Example
let sim = Similarity2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2, 3.0); assert_relative_eq!(sim * Point2::new(2.0, 4.0), Point2::new(-11.0, 8.0), epsilon = 1.0e-6);
pub fn cast<To>(self) -> Similarity<To, Unit<Complex<To>>, 2_usize> where
To: Scalar,
Similarity<To, Unit<Complex<To>>, 2_usize>: SupersetOf<Similarity<T, Unit<Complex<T>>, 2_usize>>,
[src]
pub fn cast<To>(self) -> Similarity<To, Unit<Complex<To>>, 2_usize> where
To: Scalar,
Similarity<To, Unit<Complex<To>>, 2_usize>: SupersetOf<Similarity<T, Unit<Complex<T>>, 2_usize>>,
[src]Cast the components of self
to another type.
Example
let sim = Similarity2::<f64>::identity(); let sim2 = sim.cast::<f32>(); assert_eq!(sim2, Similarity2::<f32>::identity());
impl<T> Similarity<T, Rotation<T, 3_usize>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Similarity<T, Rotation<T, 3_usize>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
axisangle: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]
pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
axisangle: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]Creates a new similarity from a translation, rotation axis-angle, and scaling factor.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); // Point and vector being transformed in the tests. let pt = Point3::new(4.0, 5.0, 6.0); let vec = Vector3::new(4.0, 5.0, 6.0); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5); // Similarity with its rotation part represented as a Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
pub fn cast<To>(self) -> Similarity<To, Rotation<To, 3_usize>, 3_usize> where
To: Scalar,
Similarity<To, Rotation<To, 3_usize>, 3_usize>: SupersetOf<Similarity<T, Rotation<T, 3_usize>, 3_usize>>,
[src]
pub fn cast<To>(self) -> Similarity<To, Rotation<To, 3_usize>, 3_usize> where
To: Scalar,
Similarity<To, Rotation<To, 3_usize>, 3_usize>: SupersetOf<Similarity<T, Rotation<T, 3_usize>, 3_usize>>,
[src]Cast the components of self
to another type.
Example
let sim = Similarity3::<f64>::identity(); let sim2 = sim.cast::<f32>(); assert_eq!(sim2, Similarity3::<f32>::identity());
pub fn face_towards(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]
pub fn face_towards(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]Creates an similarity that corresponds to a scaling factor and a local frame of
an observer standing at the point eye
and looking toward target
.
It maps the view direction target - eye
to the positive z
axis and the origin to the
eye
.
Arguments
- eye - The observer position.
- target - The target position.
- up - Vertical direction. The only requirement of this parameter is to not be collinear
to
eye - at
. Non-collinearity is not checked.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);
pub fn new_observer_frames(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]👎 Deprecated: renamed to face_towards
pub fn new_observer_frames(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]renamed to face_towards
Deprecated: Use [SimilarityMatrix3::face_towards] instead.
pub fn look_at_rh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]
pub fn look_at_rh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]Builds a right-handed look-at view matrix including scaling factor.
This conforms to the common notion of right handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let iso = Similarity3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = SimilarityMatrix3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);
pub fn look_at_lh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]
pub fn look_at_lh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Rotation<T, 3_usize>, 3_usize>
[src]Builds a left-handed look-at view matrix including a scaling factor.
This conforms to the common notion of left handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);
impl<T> Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
axisangle: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]
pub fn new(
translation: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
axisangle: Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]Creates a new similarity from a translation, rotation axis-angle, and scaling factor.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); // Point and vector being transformed in the tests. let pt = Point3::new(4.0, 5.0, 6.0); let vec = Vector3::new(4.0, 5.0, 6.0); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5); // Similarity with its rotation part represented as a Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
pub fn cast<To>(self) -> Similarity<To, Unit<Quaternion<To>>, 3_usize> where
To: Scalar,
Similarity<To, Unit<Quaternion<To>>, 3_usize>: SupersetOf<Similarity<T, Unit<Quaternion<T>>, 3_usize>>,
[src]
pub fn cast<To>(self) -> Similarity<To, Unit<Quaternion<To>>, 3_usize> where
To: Scalar,
Similarity<To, Unit<Quaternion<To>>, 3_usize>: SupersetOf<Similarity<T, Unit<Quaternion<T>>, 3_usize>>,
[src]Cast the components of self
to another type.
Example
let sim = Similarity3::<f64>::identity(); let sim2 = sim.cast::<f32>(); assert_eq!(sim2, Similarity3::<f32>::identity());
pub fn face_towards(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]
pub fn face_towards(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]Creates an similarity that corresponds to a scaling factor and a local frame of
an observer standing at the point eye
and looking toward target
.
It maps the view direction target - eye
to the positive z
axis and the origin to the
eye
.
Arguments
- eye - The observer position.
- target - The target position.
- up - Vertical direction. The only requirement of this parameter is to not be collinear
to
eye - at
. Non-collinearity is not checked.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);
pub fn new_observer_frames(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]👎 Deprecated: renamed to face_towards
pub fn new_observer_frames(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]renamed to face_towards
Deprecated: Use [SimilarityMatrix3::face_towards] instead.
pub fn look_at_rh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]
pub fn look_at_rh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]Builds a right-handed look-at view matrix including scaling factor.
This conforms to the common notion of right handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let iso = Similarity3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = SimilarityMatrix3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);
pub fn look_at_lh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]
pub fn look_at_lh(
eye: &Point<T, 3_usize>,
target: &Point<T, 3_usize>,
up: &Matrix<T, Const<{_: usize}>, Const<1_usize>, ArrayStorage<T, 3_usize, 1_usize>>,
scaling: T
) -> Similarity<T, Unit<Quaternion<T>>, 3_usize>
[src]Builds a left-handed look-at view matrix including a scaling factor.
This conforms to the common notion of left handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);
Trait Implementations
impl<T, R, const D: usize> AbsDiffEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: RealField,
R: AbstractRotation<T, D> + AbsDiffEq<R, Epsilon = <T as AbsDiffEq<T>>::Epsilon>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]
impl<T, R, const D: usize> AbsDiffEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: RealField,
R: AbstractRotation<T, D> + AbsDiffEq<R, Epsilon = <T as AbsDiffEq<T>>::Epsilon>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]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: &Similarity<T, R, D>,
epsilon: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon
) -> bool
[src]
pub fn abs_diff_eq(
&self,
other: &Similarity<T, R, D>,
epsilon: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon
) -> bool
[src]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
].
impl<T, R, const D: usize> Clone for Similarity<T, R, D> where
T: Scalar + Zero,
R: AbstractRotation<T, D> + Clone,
[src]
impl<T, R, const D: usize> Clone for Similarity<T, R, D> where
T: Scalar + Zero,
R: AbstractRotation<T, D> + Clone,
[src]impl<T, R, const D: usize> Display for Similarity<T, R, D> where
T: RealField + Display,
R: AbstractRotation<T, D> + Display,
[src]
impl<T, R, const D: usize> Display for Similarity<T, R, D> where
T: RealField + Display,
R: AbstractRotation<T, D> + Display,
[src]impl<'a, 'b, T, R, const D: usize> Div<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Div<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
impl<'b, T, R, const D: usize> Div<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Div<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
impl<'b, T, const D: usize> Div<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, const D: usize> Div<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T, const D: usize> Div<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, const D: usize> Div<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <Isometry<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <Isometry<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<'a, 'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <Similarity<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: &'b Similarity<T, R, D>
) -> <Similarity<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<'a, 'b, T, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Div<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn div(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Div<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Div<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn div(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Div<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn div(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the /
operation. Read more
impl<'a, 'b, T> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn div(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Div<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T> Div<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Div<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T> Div<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Div<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T> Div<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Div<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<&'b Unit<Quaternion<T>>>>::Output
[src]
pub fn div(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<&'b Unit<Quaternion<T>>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T> Div<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Div<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<&'b Unit<Quaternion<T>>>>::Output
[src]
pub fn div(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<&'b Unit<Quaternion<T>>>>::Output
[src]Performs the /
operation. Read more
impl<'a, T, R, const D: usize> Div<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Div<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
impl<T, R, const D: usize> Div<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Div<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
impl<T, const D: usize> Div<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, const D: usize> Div<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, T, const D: usize> Div<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, const D: usize> Div<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, T, R, const D: usize> Div<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Div<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<T, R, const D: usize> Div<Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Div<Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <Isometry<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <Isometry<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<T, R, const D: usize> Div<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Div<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <Similarity<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <Similarity<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<'a, T, R, const D: usize> Div<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Div<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]
pub fn div(
self,
rhs: Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Div<Similarity<T, R, D>>>::Output
[src]Performs the /
operation. Read more
impl<'a, T, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Div<Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn div(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Div<Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the /
operation. Read more
impl<T, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
pub fn div(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Div<Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn div(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Div<Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the /
operation. Read more
impl<'a, T> Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn div(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the /
operation. Read more
impl<T> Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn div(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Div<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the /
operation. Read more
impl<'a, T> Div<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Div<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T> Div<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Div<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T> Div<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Div<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<Unit<Quaternion<T>>>>::Output
[src]
pub fn div(
self,
rhs: Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<Unit<Quaternion<T>>>>::Output
[src]Performs the /
operation. Read more
impl<'a, T> Div<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Div<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the /
operator.
pub fn div(
self,
rhs: Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<Unit<Quaternion<T>>>>::Output
[src]
pub fn div(
self,
rhs: Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Div<Unit<Quaternion<T>>>>::Output
[src]Performs the /
operation. Read more
impl<'b, T, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
impl<'b, T, R, const D: usize> DivAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> DivAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
Performs the /=
operation. Read more
impl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
impl<T, R, const D: usize> DivAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> DivAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
impl<T, const D: usize> DivAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, const D: usize> DivAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
impl<T, R, const D: usize> DivAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> DivAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
Performs the /=
operation. Read more
impl<T> DivAssign<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> DivAssign<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the /=
operation. Read more
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 16]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 16]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 16]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 16]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]
) -> Similarity<T, R, D>
[src]
pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]
) -> Similarity<T, R, D>
[src]Performs the conversion.
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 2]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 2]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 2]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 2]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]
) -> Similarity<T, R, D>
[src]
pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]
) -> Similarity<T, R, D>
[src]Performs the conversion.
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 4]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 4]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 4]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 4]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]
) -> Similarity<T, R, D>
[src]
pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]
) -> Similarity<T, R, D>
[src]Performs the conversion.
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 8]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 8]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]
impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]> for Similarity<T, R, D> where
T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 8]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 8]>,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
<T as SimdValue>::Element: Scalar,
<T as SimdValue>::Element: Zero,
<T as SimdValue>::Element: Copy,
<R as SimdValue>::Element: Scalar,
<R as SimdValue>::Element: Zero,
<R as SimdValue>::Element: Copy,
[src]pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]
) -> Similarity<T, R, D>
[src]
pub fn from(
arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]
) -> Similarity<T, R, D>
[src]Performs the conversion.
impl<T, R, const D: usize> From<Similarity<T, R, 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: SimdRealField,
R: SubsetOf<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>>,
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>,
[src]
impl<T, R, const D: usize> From<Similarity<T, R, 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: SimdRealField,
R: SubsetOf<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>>,
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>,
[src]pub fn from(
sim: Similarity<T, R, 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>
[src]
pub fn from(
sim: Similarity<T, R, 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>
[src]Performs the conversion.
impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
impl<'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <Similarity<T, R, D> as Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]
pub fn mul(
self,
right: &'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <Similarity<T, R, D> as Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]Performs the *
operation. Read more
impl<'a, 'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <&'a Similarity<T, R, D> as Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]
pub fn mul(
self,
right: &'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <&'a Similarity<T, R, D> as Mul<&'b Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, R, const D: usize> Mul<&'b Point<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Mul<&'b Point<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T, R, const D: usize> Mul<&'b Point<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Mul<&'b Point<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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 Similarity<T, R, D>
) -> <&'a Transform<T, C, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Transform<T, C, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: &'b Similarity<T, R, D>
) -> <Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: &'b Similarity<T, R, D>
) -> <&'a Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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 Similarity<T, R, D>
) -> <Transform<T, C, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <Transform<T, C, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <Similarity<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <Similarity<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <Isometry<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Similarity<T, R, D>
) -> <Isometry<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Mul<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn mul(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Mul<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, 'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Mul<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn mul(
self,
right: &'b Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Mul<&'b Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn mul(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn mul(
self,
right: &'b Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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, 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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <&'a Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output
[src]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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: &'b Translation<T, D>
) -> <Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T> Mul<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Mul<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
[src]Performs the *
operation. Read more
impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
[src]
pub fn mul(
self,
rhs: &'b Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<&'b Unit<Quaternion<T>>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
impl<T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <Similarity<T, R, D> as Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]
pub fn mul(
self,
right: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <Similarity<T, R, D> as Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
type Output = Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <&'a Similarity<T, R, D> as Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]
pub fn mul(
self,
right: Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>
) -> <&'a Similarity<T, R, D> as Mul<Matrix<T, Const<D>, Const<1_usize>, ArrayStorage<T, D, 1_usize>>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Point<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Mul<Point<T, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T, R, const D: usize> Mul<Point<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Mul<Point<T, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T, const D: usize> Mul<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, const D: usize> Mul<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: Similarity<T, R, D>
) -> <&'a Translation<T, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<T, C, R, const D: usize> Mul<Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<T, C, R, const D: usize> Mul<Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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: Similarity<T, R, D>
) -> <Transform<T, C, D> as Mul<Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <Transform<T, C, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <&'a Similarity<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, C, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'a, T, C, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Transform<T, C, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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: Similarity<T, R, D>
) -> <&'a Transform<T, C, D> as Mul<Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <&'a Transform<T, C, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <&'a Isometry<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Isometry<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <Isometry<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <Isometry<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: Similarity<T, R, D>
) -> <Translation<T, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <Similarity<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]
pub fn mul(
self,
rhs: Similarity<T, R, D>
) -> <Similarity<T, R, D> as Mul<Similarity<T, R, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Mul<Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn mul(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <&'a Rotation<T, D> as Mul<Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the *
operation. Read more
impl<T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Mul<Similarity<T, Rotation<T, D>, D>>>::Output
[src]
pub fn mul(
self,
right: Similarity<T, Rotation<T, D>, D>
) -> <Rotation<T, D> as Mul<Similarity<T, Rotation<T, D>, D>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T> Mul<Similarity<T, Unit<Complex<T>>, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Mul<Similarity<T, Unit<Complex<T>>, 2_usize>> for &'a Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T> Mul<Similarity<T, Unit<Complex<T>>, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Mul<Similarity<T, Unit<Complex<T>>, 2_usize>> for Unit<Complex<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T> Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn mul(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <Unit<Quaternion<T>> as Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T> Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>> for &'a Unit<Quaternion<T>> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]
pub fn mul(
self,
right: Similarity<T, Unit<Quaternion<T>>, 3_usize>
) -> <&'a Unit<Quaternion<T>> as Mul<Similarity<T, Unit<Quaternion<T>>, 3_usize>>>::Output
[src]Performs the *
operation. Read more
impl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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, R, const D: usize> Mul<Transform<T, C, D>> for &'a Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'a, T, C, R, const D: usize> Mul<Transform<T, C, D>> for &'a Similarity<T, R, D> where
C: TCategoryMul<TAffine>,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]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, 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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: Translation<T, D>
) -> <Similarity<T, R, D> as Mul<Translation<T, D>>>::Output
[src]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,
[src]
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,
[src]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
[src]
pub fn mul(
self,
right: Translation<T, D>
) -> <&'a Similarity<T, R, D> as Mul<Translation<T, D>>>::Output
[src]Performs the *
operation. Read more
impl<T> Mul<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Mul<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<'a, T> Mul<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Mul<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T> Mul<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> Mul<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
[src]
pub fn mul(
self,
rhs: Unit<Quaternion<T>>
) -> <Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
[src]Performs the *
operation. Read more
impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
type Output = Similarity<T, Unit<Quaternion<T>>, 3_usize>
The resulting type after applying the *
operator.
pub fn mul(
self,
rhs: Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
[src]
pub fn mul(
self,
rhs: Unit<Quaternion<T>>
) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3_usize> as Mul<Unit<Quaternion<T>>>>::Output
[src]Performs the *
operation. Read more
impl<'b, T, R, const D: usize> MulAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> MulAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the *=
operation. Read more
impl<'b, T, const D: usize> MulAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, const D: usize> MulAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the *=
operation. Read more
impl<'b, T, C, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategory,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<'b, T, C, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategory,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]Performs the *=
operation. Read more
impl<'b, T, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]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,
[src]
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,
[src]Performs the *=
operation. Read more
Performs the *=
operation. Read more
impl<'b, T> MulAssign<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<'b, T> MulAssign<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the *=
operation. Read more
impl<T, R, const D: usize> MulAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> MulAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the *=
operation. Read more
impl<T, const D: usize> MulAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, const D: usize> MulAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the *=
operation. Read more
impl<T, C, R, const D: usize> MulAssign<Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategory,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]
impl<T, C, R, const D: usize> MulAssign<Similarity<T, R, D>> for Transform<T, C, D> where
C: TCategory,
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + RealField,
R: SubsetOf<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>>,
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>,
[src]Performs the *=
operation. Read more
impl<T, R, const D: usize> MulAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> MulAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]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,
[src]
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,
[src]Performs the *=
operation. Read more
Performs the *=
operation. Read more
impl<T> MulAssign<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T> MulAssign<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3_usize> where
T: Scalar + Zero + One + ClosedAdd<T> + ClosedMul<T> + SimdRealField,
<T as SimdValue>::Element: SimdRealField,
[src]Performs the *=
operation. Read more
impl<T, R, const D: usize> One for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]
impl<T, R, const D: usize> One for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
[src]impl<T, R, const D: usize> PartialEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D> + PartialEq<R>,
[src]
impl<T, R, const D: usize> PartialEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D> + PartialEq<R>,
[src]impl<T, R, const D: usize> RelativeEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: RealField,
R: AbstractRotation<T, D> + RelativeEq<R, Epsilon = <T as AbsDiffEq<T>>::Epsilon>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]
impl<T, R, const D: usize> RelativeEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: RealField,
R: AbstractRotation<T, D> + RelativeEq<R, Epsilon = <T as AbsDiffEq<T>>::Epsilon>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]pub fn default_max_relative(
) -> <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon
[src]
pub fn default_max_relative(
) -> <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon
[src]The default relative tolerance for testing values that are far-apart. Read more
pub fn relative_eq(
&self,
other: &Similarity<T, R, D>,
epsilon: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon,
max_relative: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon
) -> bool
[src]
pub fn relative_eq(
&self,
other: &Similarity<T, R, D>,
epsilon: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon,
max_relative: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon
) -> bool
[src]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
].
impl<T, R, const D: usize> SimdValue for Similarity<T, R, D> where
T: SimdRealField,
R: SimdValue<SimdBool = <T as SimdValue>::SimdBool> + AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
[src]
impl<T, R, const D: usize> SimdValue for Similarity<T, R, D> where
T: SimdRealField,
R: SimdValue<SimdBool = <T as SimdValue>::SimdBool> + AbstractRotation<T, D>,
<T as SimdValue>::Element: SimdRealField,
<R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D>,
[src]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
pub unsafe fn extract_unchecked(
&self,
i: usize
) -> <Similarity<T, R, D> as SimdValue>::Element
[src]
pub unsafe fn extract_unchecked(
&self,
i: usize
) -> <Similarity<T, R, D> as SimdValue>::Element
[src]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: <Similarity<T, R, D> as SimdValue>::Element
)
[src]
pub unsafe fn replace_unchecked(
&mut self,
i: usize,
val: <Similarity<T, R, D> as SimdValue>::Element
)
[src]Replaces the i-th lane of self
by val
without bound-checking.
pub fn select(
self,
cond: <Similarity<T, R, D> as SimdValue>::SimdBool,
other: Similarity<T, R, D>
) -> Similarity<T, R, D>
[src]
pub fn select(
self,
cond: <Similarity<T, R, D> as SimdValue>::SimdBool,
other: Similarity<T, R, D>
) -> Similarity<T, R, D>
[src]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<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 Similarity<T1, R, D> where
R: AbstractRotation<T1, D> + SubsetOf<Matrix<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>> + 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>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
Const<D>: DimNameAdd<Const<1_usize>>,
Const<D>: DimMin<Const<D>>,
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>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
<Const<D> as DimMin<Const<D>>>::Output == Const<D>,
[src]
impl<T1, T2, R, 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 Similarity<T1, R, D> where
R: AbstractRotation<T1, D> + SubsetOf<Matrix<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>> + 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>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
Const<D>: DimNameAdd<Const<1_usize>>,
Const<D>: DimMin<Const<D>>,
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>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
<Const<D> as DimMin<Const<D>>>::Output == Const<D>,
[src]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>
[src]
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>
[src]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
[src]
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
[src]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>
) -> Similarity<T1, R, D>
[src]
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>
) -> Similarity<T1, R, D>
[src]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> SubsetOf<Similarity<T2, R, 2_usize>> for Unit<Complex<T1>> where
R: AbstractRotation<T2, 2_usize> + SupersetOf<Unit<Complex<T1>>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2, R> SubsetOf<Similarity<T2, R, 2_usize>> for Unit<Complex<T1>> where
R: AbstractRotation<T2, 2_usize> + SupersetOf<Unit<Complex<T1>>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]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, R> SubsetOf<Similarity<T2, R, 3_usize>> for Unit<Quaternion<T1>> where
R: AbstractRotation<T2, 3_usize> + SupersetOf<Unit<Quaternion<T1>>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2, R> SubsetOf<Similarity<T2, R, 3_usize>> for Unit<Quaternion<T1>> where
R: AbstractRotation<T2, 3_usize> + SupersetOf<Unit<Quaternion<T1>>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]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, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Rotation<T1, D> where
R: AbstractRotation<T2, D> + SupersetOf<Rotation<T1, D>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Rotation<T1, D> where
R: AbstractRotation<T2, D> + SupersetOf<Rotation<T1, D>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]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, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D> where
R: AbstractRotation<T2, D>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D> where
R: AbstractRotation<T2, D>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]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, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Similarity<T1, R1, D> where
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
T1: RealField + SubsetOf<T2>,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Similarity<T1, R1, D> where
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
T1: RealField + SubsetOf<T2>,
T2: RealField + SupersetOf<T1>,
[src]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, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Isometry<T1, R1, D> where
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Isometry<T1, R1, D> where
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]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<Similarity<T2, Unit<Quaternion<T2>>, 3_usize>> for Unit<DualQuaternion<T1>> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]
impl<T1, T2> SubsetOf<Similarity<T2, Unit<Quaternion<T2>>, 3_usize>> for Unit<DualQuaternion<T1>> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
[src]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).
pub fn from_superset_unchecked(
sim: &Similarity<T2, Unit<Quaternion<T2>>, 3_usize>
) -> Unit<DualQuaternion<T1>>
[src]
pub fn from_superset_unchecked(
sim: &Similarity<T2, Unit<Quaternion<T2>>, 3_usize>
) -> Unit<DualQuaternion<T1>>
[src]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, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Similarity<T1, R, D> where
C: SuperTCategoryOf<TAffine>,
R: AbstractRotation<T1, D> + SubsetOf<Matrix<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>> + 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>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
Const<D>: DimNameAdd<Const<1_usize>>,
Const<D>: DimMin<Const<D>>,
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>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
<Const<D> as DimMin<Const<D>>>::Output == Const<D>,
[src]
impl<T1, T2, R, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Similarity<T1, R, D> where
C: SuperTCategoryOf<TAffine>,
R: AbstractRotation<T1, D> + SubsetOf<Matrix<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <DefaultAllocator as Allocator<T1, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>>::Buffer>> + 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>>,
T1: RealField,
T2: RealField + SupersetOf<T1>,
Const<D>: DimNameAdd<Const<1_usize>>,
Const<D>: DimMin<Const<D>>,
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>,
DefaultAllocator: Allocator<T2, <Const<D> as DimNameAdd<Const<1_usize>>>::Output, <Const<D> as DimNameAdd<Const<1_usize>>>::Output>,
<Const<D> as DimMin<Const<D>>>::Output == Const<D>,
[src]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, R, const D: usize> UlpsEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: RealField,
R: AbstractRotation<T, D> + UlpsEq<R, Epsilon = <T as AbsDiffEq<T>>::Epsilon>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]
impl<T, R, const D: usize> UlpsEq<Similarity<T, R, D>> for Similarity<T, R, D> where
T: RealField,
R: AbstractRotation<T, D> + UlpsEq<R, Epsilon = <T as AbsDiffEq<T>>::Epsilon>,
<T as AbsDiffEq<T>>::Epsilon: Copy,
[src]The default ULPs to tolerate when testing values that are far-apart. Read more
pub fn ulps_eq(
&self,
other: &Similarity<T, R, D>,
epsilon: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon,
max_ulps: u32
) -> bool
[src]
pub fn ulps_eq(
&self,
other: &Similarity<T, R, D>,
epsilon: <Similarity<T, R, D> as AbsDiffEq<Similarity<T, R, D>>>::Epsilon,
max_ulps: u32
) -> bool
[src]A test for equality that uses units in the last place (ULP) if the values are far apart.
impl<T, R, const D: usize> Copy for Similarity<T, R, D> where
T: Scalar + Copy + Zero,
R: AbstractRotation<T, D> + Copy,
<DefaultAllocator as Allocator<T, Const<D>, Const<1_usize>>>::Buffer: Copy,
[src]impl<T, R, const D: usize> Eq for Similarity<T, R, D> where
T: SimdRealField,
R: AbstractRotation<T, D> + Eq,
[src]Auto Trait Implementations
impl<T, R, const D: usize> RefUnwindSafe for Similarity<T, R, D> where
R: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, R, const D: usize> Send for Similarity<T, R, D> where
R: Send,
T: Send,
impl<T, R, const D: usize> Sync for Similarity<T, R, D> where
R: Sync,
T: Sync,
impl<T, R, const D: usize> Unpin for Similarity<T, R, D> where
R: Unpin,
T: Unpin,
impl<T, R, const D: usize> UnwindSafe for Similarity<T, R, D> where
R: UnwindSafe,
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,
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
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