Struct nalgebra::geometry::Similarity
source · [−]#[repr(C)]pub struct Similarity<T, R, const D: usize> {
pub isometry: Isometry<T, R, D>,
/* private fields */
}
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
sourceimpl<T: Scalar + Zero, R, const D: usize> Similarity<T, R, D> where
R: AbstractRotation<T, D>,
impl<T: Scalar + Zero, R, const D: usize> Similarity<T, R, D> where
R: AbstractRotation<T, D>,
sourcepub fn from_parts(translation: Translation<T, D>, rotation: R, scaling: T) -> Self
pub fn from_parts(translation: Translation<T, D>, rotation: R, scaling: T) -> Self
Creates a new similarity from its rotational and translational parts.
sourcepub fn from_isometry(isometry: Isometry<T, R, D>, scaling: T) -> Self
pub fn from_isometry(isometry: Isometry<T, R, D>, scaling: T) -> Self
Creates a new similarity from its rotational and translational parts.
sourcepub fn set_scaling(&mut self, scaling: T)
pub fn set_scaling(&mut self, scaling: T)
The scaling factor of this similarity transformation.
sourceimpl<T: Scalar, R, const D: usize> Similarity<T, R, D>
impl<T: Scalar, R, const D: usize> Similarity<T, R, D>
sourceimpl<T: SimdRealField, R, const D: usize> Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcepub fn from_scaling(scaling: T) -> Self
pub fn from_scaling(scaling: T) -> Self
Creates a new similarity that applies only a scaling factor.
sourcepub fn inverse_mut(&mut self)
pub fn inverse_mut(&mut self)
Inverts self
in-place.
sourcepub fn prepend_scaling(&self, scaling: T) -> Self
pub fn prepend_scaling(&self, scaling: T) -> Self
The similarity transformation that applies a scaling factor scaling
before self
.
sourcepub fn append_scaling(&self, scaling: T) -> Self
pub fn append_scaling(&self, scaling: T) -> Self
The similarity transformation that applies a scaling factor scaling
after self
.
sourcepub fn prepend_scaling_mut(&mut self, scaling: T)
pub fn prepend_scaling_mut(&mut self, scaling: T)
Sets self
to the similarity transformation that applies a scaling factor scaling
before self
.
sourcepub fn append_scaling_mut(&mut self, scaling: T)
pub fn append_scaling_mut(&mut self, scaling: T)
Sets self
to the similarity transformation that applies a scaling factor scaling
after self
.
sourcepub fn append_translation_mut(&mut self, t: &Translation<T, D>)
pub fn append_translation_mut(&mut self, t: &Translation<T, D>)
Appends to self
the given translation in-place.
sourcepub fn append_rotation_mut(&mut self, r: &R)
pub fn append_rotation_mut(&mut self, r: &R)
Appends to self
the given rotation in-place.
sourcepub fn append_rotation_wrt_point_mut(&mut self, r: &R, p: &Point<T, D>)
pub fn append_rotation_wrt_point_mut(&mut self, r: &R, p: &Point<T, D>)
Appends in-place to self
a rotation centered at the point p
, i.e., the rotation that
lets p
invariant.
sourcepub fn append_rotation_wrt_center_mut(&mut self, r: &R)
pub fn append_rotation_wrt_center_mut(&mut self, r: &R)
Appends in-place to self
a rotation centered at the point with coordinates
self.translation
.
sourcepub fn transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
pub fn transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
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);
sourcepub fn transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
pub fn transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
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);
sourcepub fn inverse_transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
pub fn inverse_transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
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);
sourcepub fn inverse_transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
pub fn inverse_transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
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);
sourceimpl<T: SimdRealField, R, const D: usize> Similarity<T, R, D>
impl<T: SimdRealField, R, const D: usize> Similarity<T, R, D>
sourcepub fn to_homogeneous(
&self
) -> OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
Const<D>: DimNameAdd<U1>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
pub fn to_homogeneous(
&self
) -> OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
Const<D>: DimNameAdd<U1>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
Converts this similarity into its equivalent homogeneous transformation matrix.
sourceimpl<T: SimdRealField, R, const D: usize> Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<T: SimdRealField, R, const D: usize> Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcepub fn rotation_wrt_point(r: R, p: Point<T, D>, scaling: T) -> Self
pub fn rotation_wrt_point(r: R, p: Point<T, D>, scaling: T) -> Self
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);
sourceimpl<T: SimdRealField> Similarity<T, Rotation2<T>, 2> where
T::Element: SimdRealField,
impl<T: SimdRealField> Similarity<T, Rotation2<T>, 2> where
T::Element: SimdRealField,
sourcepub fn new(translation: Vector2<T>, angle: T, scaling: T) -> Self
pub fn new(translation: Vector2<T>, angle: T, scaling: T) -> Self
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);
sourcepub fn cast<To: Scalar>(self) -> Similarity<To, Rotation2<To>, 2> where
Similarity<To, Rotation2<To>, 2>: SupersetOf<Self>,
pub fn cast<To: Scalar>(self) -> Similarity<To, Rotation2<To>, 2> where
Similarity<To, Rotation2<To>, 2>: SupersetOf<Self>,
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());
sourceimpl<T: SimdRealField> Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<T: SimdRealField> Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
sourcepub fn new(translation: Vector2<T>, angle: T, scaling: T) -> Self
pub fn new(translation: Vector2<T>, angle: T, scaling: T) -> Self
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);
sourcepub fn cast<To: Scalar>(self) -> Similarity<To, UnitComplex<To>, 2> where
Similarity<To, UnitComplex<To>, 2>: SupersetOf<Self>,
pub fn cast<To: Scalar>(self) -> Similarity<To, UnitComplex<To>, 2> where
Similarity<To, UnitComplex<To>, 2>: SupersetOf<Self>,
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());
sourceimpl<T: SimdRealField> Similarity<T, Rotation3<T>, { _ }> where
T::Element: SimdRealField,
impl<T: SimdRealField> Similarity<T, Rotation3<T>, { _ }> where
T::Element: SimdRealField,
sourcepub fn new(translation: Vector3<T>, axisangle: Vector3<T>, scaling: T) -> Self
pub fn new(translation: Vector3<T>, axisangle: Vector3<T>, scaling: T) -> Self
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);
sourcepub fn cast<To: Scalar>(self) -> Similarity<To, Rotation3<To>, { _ }> where
Similarity<To, Rotation3<To>, { _ }>: SupersetOf<Self>,
pub fn cast<To: Scalar>(self) -> Similarity<To, Rotation3<To>, { _ }> where
Similarity<To, Rotation3<To>, { _ }>: SupersetOf<Self>,
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());
sourcepub fn face_towards(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
pub fn face_towards(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
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);
sourcepub fn new_observer_frames(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
👎 Deprecated: renamed to face_towards
pub fn new_observer_frames(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
renamed to face_towards
Deprecated: Use SimilarityMatrix3::face_towards
instead.
sourcepub fn look_at_rh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
pub fn look_at_rh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
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);
sourcepub fn look_at_lh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
pub fn look_at_lh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
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);
sourceimpl<T: SimdRealField> Similarity<T, UnitQuaternion<T>, { _ }> where
T::Element: SimdRealField,
impl<T: SimdRealField> Similarity<T, UnitQuaternion<T>, { _ }> where
T::Element: SimdRealField,
sourcepub fn new(translation: Vector3<T>, axisangle: Vector3<T>, scaling: T) -> Self
pub fn new(translation: Vector3<T>, axisangle: Vector3<T>, scaling: T) -> Self
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);
sourcepub fn cast<To: Scalar>(self) -> Similarity<To, UnitQuaternion<To>, { _ }> where
Similarity<To, UnitQuaternion<To>, { _ }>: SupersetOf<Self>,
pub fn cast<To: Scalar>(self) -> Similarity<To, UnitQuaternion<To>, { _ }> where
Similarity<To, UnitQuaternion<To>, { _ }>: SupersetOf<Self>,
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());
sourcepub fn face_towards(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
pub fn face_towards(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
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);
sourcepub fn new_observer_frames(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
👎 Deprecated: renamed to face_towards
pub fn new_observer_frames(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
renamed to face_towards
Deprecated: Use SimilarityMatrix3::face_towards
instead.
sourcepub fn look_at_rh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
pub fn look_at_rh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
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);
sourcepub fn look_at_lh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
pub fn look_at_lh(
eye: &Point3<T>,
target: &Point3<T>,
up: &Vector3<T>,
scaling: T
) -> Self
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
sourceimpl<T: RealField, R, const D: usize> AbsDiffEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + AbsDiffEq<Epsilon = T::Epsilon>,
T::Epsilon: Clone,
impl<T: RealField, R, const D: usize> AbsDiffEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + AbsDiffEq<Epsilon = T::Epsilon>,
T::Epsilon: Clone,
sourcefn default_epsilon() -> Self::Epsilon
fn default_epsilon() -> Self::Epsilon
The default tolerance to use when testing values that are close together. Read more
sourcefn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
A test for equality that uses the absolute difference to compute the approximate equality of two numbers. Read more
sourcefn 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
.
sourceimpl<T: RealField + RealField, R, const D: usize> AbstractMagma<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> AbstractMagma<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourceimpl<T: RealField + RealField, R, const D: usize> AbstractMonoid<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> AbstractMonoid<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourcefn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> bool where
Self: RelativeEq<Self>,
fn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> bool where
Self: RelativeEq<Self>,
Checks whether operating with the identity element is a no-op for the given argument. Approximate equality is used for verifications. Read more
sourceimpl<T: RealField + RealField, R, const D: usize> AbstractQuasigroup<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> AbstractQuasigroup<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourcefn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq<Self>,
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq<Self>,
Returns true
if latin squareness holds for the given arguments. Approximate
equality is used for verifications. Read more
sourcefn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq,
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq,
Returns true
if latin squareness holds for the given arguments. Read more
sourceimpl<T: RealField + RealField, R, const D: usize> AbstractSemigroup<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> AbstractSemigroup<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourcefn prop_is_associative_approx(args: (Self, Self, Self)) -> bool where
Self: RelativeEq<Self>,
fn prop_is_associative_approx(args: (Self, Self, Self)) -> bool where
Self: RelativeEq<Self>,
Returns true
if associativity holds for the given arguments. Approximate equality is used
for verifications. Read more
sourcefn prop_is_associative(args: (Self, Self, Self)) -> bool where
Self: Eq,
fn prop_is_associative(args: (Self, Self, Self)) -> bool where
Self: Eq,
Returns true
if associativity holds for the given arguments.
sourceimpl<T: RealField + RealField, R, const D: usize> AffineTransformation<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> AffineTransformation<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
type NonUniformScaling = T
type NonUniformScaling = T
Type of the non-uniform scaling to be applied.
type Rotation = R
type Rotation = R
Type of the first rotation to be applied.
type Translation = Translation<T, D>
type Translation = Translation<T, D>
The type of the pure translation part of this affine transformation.
sourcefn decompose(&self) -> (Translation<T, D>, R, T, R)
fn decompose(&self) -> (Translation<T, D>, R, T, R)
Decomposes this affine transformation into a rotation followed by a non-uniform scaling, followed by a rotation, followed by a translation. Read more
sourcefn append_translation(&self, t: &Self::Translation) -> Self
fn append_translation(&self, t: &Self::Translation) -> Self
Appends a translation to this similarity.
sourcefn prepend_translation(&self, t: &Self::Translation) -> Self
fn prepend_translation(&self, t: &Self::Translation) -> Self
Prepends a translation to this similarity.
sourcefn append_rotation(&self, r: &Self::Rotation) -> Self
fn append_rotation(&self, r: &Self::Rotation) -> Self
Appends a rotation to this similarity.
sourcefn prepend_rotation(&self, r: &Self::Rotation) -> Self
fn prepend_rotation(&self, r: &Self::Rotation) -> Self
Prepends a rotation to this similarity.
sourcefn append_scaling(&self, s: &Self::NonUniformScaling) -> Self
fn append_scaling(&self, s: &Self::NonUniformScaling) -> Self
Appends a scaling factor to this similarity.
sourcefn prepend_scaling(&self, s: &Self::NonUniformScaling) -> Self
fn prepend_scaling(&self, s: &Self::NonUniformScaling) -> Self
Prepends a scaling factor to this similarity.
sourceimpl<T, R, const D: usize> Arbitrary for Similarity<T, R, D> where
T: RealField + Arbitrary + Send,
T::Element: RealField,
R: AbstractRotation<T, D> + Arbitrary + Send,
Owned<T, Const<D>>: Send,
impl<T, R, const D: usize> Arbitrary for Similarity<T, R, D> where
T: RealField + Arbitrary + Send,
T::Element: RealField,
R: AbstractRotation<T, D> + Arbitrary + Send,
Owned<T, Const<D>>: Send,
sourceimpl<T, R, const D: usize> Archive for Similarity<T, R, D> where
Isometry<T, R, D>: Archive,
T: Archive,
impl<T, R, const D: usize> Archive for Similarity<T, R, D> where
Isometry<T, R, D>: Archive,
T: Archive,
type Archived = ArchivedSimilarity<T, R, D>
type Archived = ArchivedSimilarity<T, R, D>
The archived representation of this type. Read more
type Resolver = SimilarityResolver<T, R, D>
type Resolver = SimilarityResolver<T, R, D>
The resolver for this type. It must contain all the additional information from serializing needed to make the archived type from the normal type. Read more
sourceimpl<__C: ?Sized, T, R, const D: usize> CheckBytes<__C> for Similarity<T, R, D> where
Isometry<T, R, D>: CheckBytes<__C>,
T: CheckBytes<__C>,
impl<__C: ?Sized, T, R, const D: usize> CheckBytes<__C> for Similarity<T, R, D> where
Isometry<T, R, D>: CheckBytes<__C>,
T: CheckBytes<__C>,
type Error = StructCheckError
type Error = StructCheckError
The error that may result from checking the type.
sourceunsafe fn check_bytes<'__bytecheck>(
value: *const Self,
context: &mut __C
) -> Result<&'__bytecheck Self, StructCheckError>
unsafe fn check_bytes<'__bytecheck>(
value: *const Self,
context: &mut __C
) -> Result<&'__bytecheck Self, StructCheckError>
Checks whether the given pointer points to a valid value within the given context. Read more
sourceimpl<T: Clone, R: Clone, const D: usize> Clone for Similarity<T, R, D>
impl<T: Clone, R: Clone, const D: usize> Clone for Similarity<T, R, D>
sourcefn clone(&self) -> Similarity<T, R, D>
fn clone(&self) -> Similarity<T, R, D>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Default for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Default for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'de, T, R, const D: usize> Deserialize<'de> for Similarity<T, R, D> where
T: Scalar + Deserialize<'de>,
R: Deserialize<'de>,
DefaultAllocator: Allocator<T, Const<D>>,
Owned<T, Const<D>>: Deserialize<'de>,
impl<'de, T, R, const D: usize> Deserialize<'de> for Similarity<T, R, D> where
T: Scalar + Deserialize<'de>,
R: Deserialize<'de>,
DefaultAllocator: Allocator<T, Const<D>>,
Owned<T, Const<D>>: Deserialize<'de>,
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl<__D: Fallible + ?Sized, T, R, const D: usize> Deserialize<Similarity<T, R, D>, __D> for Archived<Similarity<T, R, D>> where
Isometry<T, R, D>: Archive,
Archived<Isometry<T, R, D>>: Deserialize<Isometry<T, R, D>, __D>,
T: Archive,
Archived<T>: Deserialize<T, __D>,
impl<__D: Fallible + ?Sized, T, R, const D: usize> Deserialize<Similarity<T, R, D>, __D> for Archived<Similarity<T, R, D>> where
Isometry<T, R, D>: Archive,
Archived<Isometry<T, R, D>>: Deserialize<Isometry<T, R, D>, __D>,
T: Archive,
Archived<T>: Deserialize<T, __D>,
sourcefn deserialize(
&self,
deserializer: &mut __D
) -> Result<Similarity<T, R, D>, __D::Error>
fn deserialize(
&self,
deserializer: &mut __D
) -> Result<Similarity<T, R, D>, __D::Error>
Deserializes using the given deserializer
sourceimpl<T, R, const D: usize> Display for Similarity<T, R, D> where
T: RealField + Display,
R: AbstractRotation<T, D> + Display,
impl<T, R, const D: usize> Display for Similarity<T, R, D> where
T: RealField + Display,
R: AbstractRotation<T, D> + Display,
sourceimpl<T: RealField, R, const D: usize> Distribution<Similarity<T, R, D>> for Standard where
R: AbstractRotation<T, D>,
Standard: Distribution<T> + Distribution<R>,
impl<T: RealField, R, const D: usize> Distribution<Similarity<T, R, D>> for Standard where
R: AbstractRotation<T, D>,
Standard: Distribution<T> + Distribution<R>,
sourcefn sample<'a, G: Rng + ?Sized>(&self, rng: &mut G) -> Similarity<T, R, D>
fn sample<'a, G: Rng + ?Sized>(&self, rng: &mut G) -> Similarity<T, R, D>
Generate an arbitrary random variate for testing purposes.
sourcefn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
Create an iterator that generates random values of T
, using rng
as
the source of randomness. Read more
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Div<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Div<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'b, T: SimdRealField, R, const D: usize> Div<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Div<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, 'b, T: SimdRealField, const D: usize> Div<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Div<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<'b, T: SimdRealField, const D: usize> Div<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, const D: usize> Div<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Div<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
sourceimpl<'b, T: SimdRealField, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
sourceimpl<'a, 'b, T: SimdRealField> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn div(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'b, T: SimdRealField> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn div(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField> Div<&'b Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Div<&'b Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b UnitComplex<T>) -> Self::Output
fn div(self, rhs: &'b UnitComplex<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'b, T: SimdRealField> Div<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Div<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b UnitComplex<T>) -> Self::Output
fn div(self, rhs: &'b UnitComplex<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField> Div<&'b Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Div<&'b Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
fn div(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'b, T: SimdRealField> Div<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Div<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
fn div(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, T: SimdRealField, R, const D: usize> Div<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Div<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<T: SimdRealField, R, const D: usize> Div<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Div<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, T: SimdRealField, const D: usize> Div<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Div<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<T: SimdRealField, const D: usize> Div<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, const D: usize> Div<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<'a, T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Div<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: Similarity<T, R, D>) -> Self::Output
fn div(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, T: SimdRealField, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
sourceimpl<T: SimdRealField, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the /
operator.
sourceimpl<'a, T: SimdRealField> Div<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Div<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn div(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<T: SimdRealField> Div<Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Div<Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn div(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, T: SimdRealField> Div<Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Div<Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: UnitComplex<T>) -> Self::Output
fn div(self, rhs: UnitComplex<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<T: SimdRealField> Div<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<T: SimdRealField> Div<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: UnitComplex<T>) -> Self::Output
fn div(self, rhs: UnitComplex<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'a, T: SimdRealField> Div<Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Div<Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: UnitQuaternion<T>) -> Self::Output
fn div(self, rhs: UnitQuaternion<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<T: SimdRealField> Div<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<T: SimdRealField> Div<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the /
operator.
sourcefn div(self, rhs: UnitQuaternion<T>) -> Self::Output
fn div(self, rhs: UnitQuaternion<T>) -> Self::Output
Performs the /
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn div_assign(&mut self, rhs: &'b Isometry<T, R, D>)
fn div_assign(&mut self, rhs: &'b Isometry<T, R, D>)
Performs the /=
operation. Read more
sourceimpl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn div_assign(&mut self, rhs: &'b Rotation<T, D>)
fn div_assign(&mut self, rhs: &'b Rotation<T, D>)
Performs the /=
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn div_assign(&mut self, rhs: &'b Similarity<T, R, D>)
fn div_assign(&mut self, rhs: &'b Similarity<T, R, D>)
Performs the /=
operation. Read more
sourceimpl<'b, T> DivAssign<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<'b, T> DivAssign<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn div_assign(&mut self, rhs: &'b UnitComplex<T>)
fn div_assign(&mut self, rhs: &'b UnitComplex<T>)
Performs the /=
operation. Read more
sourceimpl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn div_assign(&mut self, rhs: &'b UnitQuaternion<T>)
fn div_assign(&mut self, rhs: &'b UnitQuaternion<T>)
Performs the /=
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> DivAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> DivAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn div_assign(&mut self, rhs: Isometry<T, R, D>)
fn div_assign(&mut self, rhs: Isometry<T, R, D>)
Performs the /=
operation. Read more
sourceimpl<T, const D: usize> DivAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<T, const D: usize> DivAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn div_assign(&mut self, rhs: Rotation<T, D>)
fn div_assign(&mut self, rhs: Rotation<T, D>)
Performs the /=
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> DivAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> DivAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn div_assign(&mut self, rhs: Similarity<T, R, D>)
fn div_assign(&mut self, rhs: Similarity<T, R, D>)
Performs the /=
operation. Read more
sourceimpl<T> DivAssign<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<T> DivAssign<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn div_assign(&mut self, rhs: UnitComplex<T>)
fn div_assign(&mut self, rhs: UnitComplex<T>)
Performs the /=
operation. Read more
sourceimpl<T> DivAssign<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<T> DivAssign<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn div_assign(&mut self, rhs: UnitQuaternion<T>)
fn div_assign(&mut self, rhs: UnitQuaternion<T>)
Performs the /=
operation. Read more
sourceimpl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 16]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 16]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
impl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 16]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 16]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
sourceimpl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 2]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 2]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
impl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 2]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 2]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
sourceimpl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 4]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 4]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
impl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 4]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 4]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
sourceimpl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 8]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 8]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
impl<T: Scalar + Zero + PrimitiveSimdValue, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]> for Similarity<T, R, D> where
T: From<[<T as SimdValue>::Element; 8]>,
R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 8]>,
R::Element: AbstractRotation<T::Element, D>,
T::Element: Scalar + Zero + Copy,
R::Element: Scalar + Zero + Copy,
sourceimpl<T: SimdRealField, R, const D: usize> From<Similarity<T, R, D>> for OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
Const<D>: DimNameAdd<U1>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T: SimdRealField, R, const D: usize> From<Similarity<T, R, D>> for OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> where
Const<D>: DimNameAdd<U1>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
sourcefn from(sim: Similarity<T, R, D>) -> Self
fn from(sim: Similarity<T, R, D>) -> Self
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3
sourcefn from(iso: Similarity2<f32>) -> Mat3
fn from(iso: Similarity2<f32>) -> Mat3
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4
sourcefn from(iso: Similarity3<f32>) -> Mat4
fn from(iso: Similarity3<f32>) -> Mat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3
sourcefn from(iso: Similarity2<f64>) -> DMat3
fn from(iso: Similarity2<f64>) -> DMat3
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4
sourcefn from(iso: Similarity3<f64>) -> DMat4
fn from(iso: Similarity3<f64>) -> DMat4
Converts to this type from the input type.
sourceimpl<T: Scalar + Hash, R: Hash, const D: usize> Hash for Similarity<T, R, D> where
Owned<T, Const<D>>: Hash,
impl<T: Scalar + Hash, R: Hash, const D: usize> Hash for Similarity<T, R, D> where
Owned<T, Const<D>>: Hash,
sourceimpl<T: RealField + RealField, R, const D: usize> Identity<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> Identity<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, const D: usize> Mul<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourcefn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, right: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourcefn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: &'b Similarity<T, R, D>) -> Self::Output
fn mul(self, right: &'b Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
sourceimpl<'b, T: SimdRealField, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
sourceimpl<'a, 'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b Similarity<T, UnitComplex<T>, 2>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, UnitComplex<T>, 2>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for UnitComplex<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for UnitComplex<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b Similarity<T, UnitComplex<T>, 2>) -> Self::Output
fn mul(self, rhs: &'b Similarity<T, UnitComplex<T>, 2>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn mul(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn mul(self, right: &'b Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourceimpl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourceimpl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, 'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: &'b Translation<T, D>) -> Self::Output
fn mul(self, right: &'b Translation<T, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: &'b Translation<T, D>) -> Self::Output
fn mul(self, right: &'b Translation<T, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b UnitComplex<T>) -> Self::Output
fn mul(self, rhs: &'b UnitComplex<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b UnitComplex<T>) -> Self::Output
fn mul(self, rhs: &'b UnitComplex<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<'a, 'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
fn mul(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<'b, T: SimdRealField> Mul<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
fn mul(self, rhs: &'b UnitQuaternion<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<T: SimdRealField, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<T: SimdRealField, R, const D: usize> Mul<OPoint<T, Const<D>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<OPoint<T, Const<D>>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<'a, T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, const D: usize> Mul<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T::Element: SimdRealField,
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T, C, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourcefn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: Similarity<T, R, D>) -> Self::Output
fn mul(self, right: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Isometry<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T, C, R, const D: usize> Mul<Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, R, const D: usize> Mul<Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourcefn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
fn mul(self, rhs: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: Similarity<T, R, D>) -> Self::Output
fn mul(self, right: Similarity<T, R, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
sourceimpl<T: SimdRealField, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
impl<T: SimdRealField, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D> where
T::Element: SimdRealField,
type Output = Similarity<T, Rotation<T, D>, D>
type Output = Similarity<T, Rotation<T, D>, D>
The resulting type after applying the *
operator.
sourceimpl<'a, T: SimdRealField> Mul<Similarity<T, Unit<Complex<T>>, 2>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Similarity<T, Unit<Complex<T>>, 2>> for &'a UnitComplex<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: Similarity<T, UnitComplex<T>, 2>) -> Self::Output
fn mul(self, rhs: Similarity<T, UnitComplex<T>, 2>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField> Mul<Similarity<T, Unit<Complex<T>>, 2>> for UnitComplex<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Similarity<T, Unit<Complex<T>>, 2>> for UnitComplex<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: Similarity<T, UnitComplex<T>, 2>) -> Self::Output
fn mul(self, rhs: Similarity<T, UnitComplex<T>, 2>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn mul(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for UnitQuaternion<T> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
fn mul(self, right: Similarity<T, UnitQuaternion<T>, 3>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T, C, R, const D: usize> Mul<Transform<T, C, D>> for &'a Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'a, T, C, R, const D: usize> Mul<Transform<T, C, D>> for &'a Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourceimpl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Similarity<T, R, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategoryMul<TAffine>,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
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.
sourceimpl<'a, T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'a, T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: Translation<T, D>) -> Self::Output
fn mul(self, right: Translation<T, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
type Output = Similarity<T, R, D>
type Output = Similarity<T, R, D>
The resulting type after applying the *
operator.
sourcefn mul(self, right: Translation<T, D>) -> Self::Output
fn mul(self, right: Translation<T, D>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField> Mul<Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Unit<Complex<T>>> for &'a Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: UnitComplex<T>) -> Self::Output
fn mul(self, rhs: UnitComplex<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField> Mul<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Complex<T>>, 2>
type Output = Similarity<T, Unit<Complex<T>>, 2>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: UnitComplex<T>) -> Self::Output
fn mul(self, rhs: UnitComplex<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'a, T: SimdRealField> Mul<Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<'a, T: SimdRealField> Mul<Unit<Quaternion<T>>> for &'a Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: UnitQuaternion<T>) -> Self::Output
fn mul(self, rhs: UnitQuaternion<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<T: SimdRealField> Mul<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
impl<T: SimdRealField> Mul<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T::Element: SimdRealField,
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
type Output = Similarity<T, Unit<Quaternion<T>>, 3>
The resulting type after applying the *
operator.
sourcefn mul(self, rhs: UnitQuaternion<T>) -> Self::Output
fn mul(self, rhs: UnitQuaternion<T>) -> Self::Output
Performs the *
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn mul_assign(&mut self, rhs: &'b Isometry<T, R, D>)
fn mul_assign(&mut self, rhs: &'b Isometry<T, R, D>)
Performs the *=
operation. Read more
sourceimpl<'b, T, const D: usize> MulAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<'b, T, const D: usize> MulAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn mul_assign(&mut self, rhs: &'b Rotation<T, D>)
fn mul_assign(&mut self, rhs: &'b Rotation<T, D>)
Performs the *=
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn mul_assign(&mut self, rhs: &'b Similarity<T, R, D>)
fn mul_assign(&mut self, rhs: &'b Similarity<T, R, D>)
Performs the *=
operation. Read more
sourceimpl<'b, T, C, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<'b, T, C, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
sourcefn mul_assign(&mut self, rhs: &'b Similarity<T, R, D>)
fn mul_assign(&mut self, rhs: &'b Similarity<T, R, D>)
Performs the *=
operation. Read more
sourceimpl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<'b, T: SimdRealField, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn mul_assign(&mut self, rhs: &'b Translation<T, D>)
fn mul_assign(&mut self, rhs: &'b Translation<T, D>)
Performs the *=
operation. Read more
sourceimpl<'b, T> MulAssign<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<'b, T> MulAssign<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn mul_assign(&mut self, rhs: &'b UnitComplex<T>)
fn mul_assign(&mut self, rhs: &'b UnitComplex<T>)
Performs the *=
operation. Read more
sourceimpl<'b, T> MulAssign<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<'b, T> MulAssign<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn mul_assign(&mut self, rhs: &'b UnitQuaternion<T>)
fn mul_assign(&mut self, rhs: &'b UnitQuaternion<T>)
Performs the *=
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> MulAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> MulAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn mul_assign(&mut self, rhs: Isometry<T, R, D>)
fn mul_assign(&mut self, rhs: Isometry<T, R, D>)
Performs the *=
operation. Read more
sourceimpl<T, const D: usize> MulAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<T, const D: usize> MulAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn mul_assign(&mut self, rhs: Rotation<T, D>)
fn mul_assign(&mut self, rhs: Rotation<T, D>)
Performs the *=
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> MulAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> MulAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn mul_assign(&mut self, rhs: Similarity<T, R, D>)
fn mul_assign(&mut self, rhs: Similarity<T, R, D>)
Performs the *=
operation. Read more
sourceimpl<T, C, R, const D: usize> MulAssign<Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T, C, R, const D: usize> MulAssign<Similarity<T, R, D>> for Transform<T, C, D> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
Const<D>: DimNameAdd<U1>,
C: TCategory,
R: SubsetOf<OMatrix<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
sourcefn mul_assign(&mut self, rhs: Similarity<T, R, D>)
fn mul_assign(&mut self, rhs: Similarity<T, R, D>)
Performs the *=
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourcefn mul_assign(&mut self, rhs: Translation<T, D>)
fn mul_assign(&mut self, rhs: Translation<T, D>)
Performs the *=
operation. Read more
sourceimpl<T> MulAssign<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<T> MulAssign<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn mul_assign(&mut self, rhs: UnitComplex<T>)
fn mul_assign(&mut self, rhs: UnitComplex<T>)
Performs the *=
operation. Read more
sourceimpl<T> MulAssign<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
impl<T> MulAssign<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
T::Element: SimdRealField,
sourcefn mul_assign(&mut self, rhs: UnitQuaternion<T>)
fn mul_assign(&mut self, rhs: UnitQuaternion<T>)
Performs the *=
operation. Read more
sourceimpl<T: SimdRealField, R, const D: usize> One for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
impl<T: SimdRealField, R, const D: usize> One for Similarity<T, R, D> where
T::Element: SimdRealField,
R: AbstractRotation<T, D>,
sourceimpl<T: SimdRealField, R, const D: usize> PartialEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + PartialEq,
impl<T: SimdRealField, R, const D: usize> PartialEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + PartialEq,
sourceimpl<T: RealField + RealField, R, const D: usize> ProjectiveTransformation<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> ProjectiveTransformation<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourcefn inverse_transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
fn inverse_transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
Applies this group’s two_sided_inverse action on a point from the euclidean space.
sourcefn inverse_transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
fn inverse_transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
Applies this group’s two_sided_inverse action on a vector from the euclidean space. Read more
sourceimpl<T: RealField, R, const D: usize> RelativeEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + RelativeEq<Epsilon = T::Epsilon>,
T::Epsilon: Clone,
impl<T: RealField, R, const D: usize> RelativeEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + RelativeEq<Epsilon = T::Epsilon>,
T::Epsilon: Clone,
sourcefn default_max_relative() -> Self::Epsilon
fn default_max_relative() -> Self::Epsilon
The default relative tolerance for testing values that are far-apart. Read more
sourcefn relative_eq(
&self,
other: &Self,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
fn relative_eq(
&self,
other: &Self,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
A test for equality that uses a relative comparison if the values are far apart.
sourcefn 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
.
sourceimpl<__S: Fallible + ?Sized, T, R, const D: usize> Serialize<__S> for Similarity<T, R, D> where
Isometry<T, R, D>: Serialize<__S>,
T: Serialize<__S>,
impl<__S: Fallible + ?Sized, T, R, const D: usize> Serialize<__S> for Similarity<T, R, D> where
Isometry<T, R, D>: Serialize<__S>,
T: Serialize<__S>,
sourceimpl<T, R, const D: usize> Serialize for Similarity<T, R, D> where
T: Scalar + Serialize,
R: Serialize,
DefaultAllocator: Allocator<T, Const<D>>,
Owned<T, Const<D>>: Serialize,
impl<T, R, const D: usize> Serialize for Similarity<T, R, D> where
T: Scalar + Serialize,
R: Serialize,
DefaultAllocator: Allocator<T, Const<D>>,
Owned<T, Const<D>>: Serialize,
sourceimpl<T: SimdRealField, R, const D: usize> SimdValue for Similarity<T, R, D> where
T::Element: SimdRealField,
R: SimdValue<SimdBool = T::SimdBool> + AbstractRotation<T, D>,
R::Element: AbstractRotation<T::Element, D>,
impl<T: SimdRealField, R, const D: usize> SimdValue for Similarity<T, R, D> where
T::Element: SimdRealField,
R: SimdValue<SimdBool = T::SimdBool> + AbstractRotation<T, D>,
R::Element: AbstractRotation<T::Element, D>,
type Element = Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>
type Element = Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>
The type of the elements of each lane of this SIMD value.
type SimdBool = <T as SimdValue>::SimdBool
type SimdBool = <T as SimdValue>::SimdBool
Type of the result of comparing two SIMD values like self
.
sourceunsafe fn extract_unchecked(&self, i: usize) -> Self::Element
unsafe fn extract_unchecked(&self, i: usize) -> Self::Element
Extracts the i-th lane of self
without bound-checking.
sourcefn replace(&mut self, i: usize, val: Self::Element)
fn replace(&mut self, i: usize, val: Self::Element)
Replaces the i-th lane of self
by val
. Read more
sourceunsafe fn replace_unchecked(&mut self, i: usize, val: Self::Element)
unsafe fn replace_unchecked(&mut self, i: usize, val: Self::Element)
Replaces the i-th lane of self
by val
without bound-checking.
sourcefn select(self, cond: Self::SimdBool, other: Self) -> Self
fn select(self, cond: Self::SimdBool, other: Self) -> Self
Merges self
and other
depending on the lanes of cond
. Read more
sourceimpl<T: RealField + RealField, R, const D: usize> Similarity<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> Similarity<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
type Scaling = T
type Scaling = T
The type of the pure (uniform) scaling part of this similarity transformation.
sourcefn translation(&self) -> Translation<T, D>
fn translation(&self) -> Translation<T, D>
The pure translational component of this similarity transformation.
sourcefn translate_point(&self, pt: &E) -> E
fn translate_point(&self, pt: &E) -> E
Applies this transformation’s pure translational part to a point.
sourcefn rotate_point(&self, pt: &E) -> E
fn rotate_point(&self, pt: &E) -> E
Applies this transformation’s pure rotational part to a point.
sourcefn scale_point(&self, pt: &E) -> E
fn scale_point(&self, pt: &E) -> E
Applies this transformation’s pure scaling part to a point.
sourcefn rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation’s pure rotational part to a vector.
sourcefn scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation’s pure scaling part to a vector.
sourcefn inverse_translate_point(&self, pt: &E) -> E
fn inverse_translate_point(&self, pt: &E) -> E
Applies this transformation inverse’s pure translational part to a point.
sourcefn inverse_rotate_point(&self, pt: &E) -> E
fn inverse_rotate_point(&self, pt: &E) -> E
Applies this transformation inverse’s pure rotational part to a point.
sourcefn inverse_scale_point(&self, pt: &E) -> E
fn inverse_scale_point(&self, pt: &E) -> E
Applies this transformation inverse’s pure scaling part to a point.
sourcefn inverse_rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn inverse_rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation inverse’s pure rotational part to a vector.
sourcefn inverse_scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn inverse_scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation inverse’s pure scaling part to a vector.
sourceimpl<T1, T2, R, const D: usize> SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>> for Similarity<T1, R, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T1, D> + SubsetOf<OMatrix<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>> + SubsetOf<OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
Const<D>: DimNameAdd<U1> + DimMin<Const<D>, Output = Const<D>>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T1, T2, R, const D: usize> SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>> for Similarity<T1, R, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T1, D> + SubsetOf<OMatrix<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>> + SubsetOf<OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
Const<D>: DimNameAdd<U1> + DimMin<Const<D>, Output = Const<D>>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
sourcefn to_superset(
&self
) -> OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
fn to_superset(
&self
) -> OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(
m: &OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
) -> bool
fn is_in_subset(
m: &OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(
m: &OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
) -> Self
fn from_superset_unchecked(
m: &OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>
) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R> SubsetOf<Similarity<T2, R, 2>> for UnitComplex<T1> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, 2> + SupersetOf<Self>,
impl<T1, T2, R> SubsetOf<Similarity<T2, R, 2>> for UnitComplex<T1> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, 2> + SupersetOf<Self>,
sourcefn to_superset(&self) -> Similarity<T2, R, 2>
fn to_superset(&self) -> Similarity<T2, R, 2>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity<T2, R, 2>) -> bool
fn is_in_subset(sim: &Similarity<T2, R, 2>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity<T2, R, 2>) -> Self
fn from_superset_unchecked(sim: &Similarity<T2, R, 2>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R> SubsetOf<Similarity<T2, R, 3>> for UnitQuaternion<T1> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, 3> + SupersetOf<Self>,
impl<T1, T2, R> SubsetOf<Similarity<T2, R, 3>> for UnitQuaternion<T1> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, 3> + SupersetOf<Self>,
sourcefn to_superset(&self) -> Similarity<T2, R, 3>
fn to_superset(&self) -> Similarity<T2, R, 3>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity<T2, R, 3>) -> bool
fn is_in_subset(sim: &Similarity<T2, R, 3>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity<T2, R, 3>) -> Self
fn from_superset_unchecked(sim: &Similarity<T2, R, 3>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Rotation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D> + SupersetOf<Self>,
impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Rotation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D> + SupersetOf<Self>,
sourcefn to_superset(&self) -> Similarity<T2, R, D>
fn to_superset(&self) -> Similarity<T2, R, D>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity<T2, R, D>) -> bool
fn is_in_subset(sim: &Similarity<T2, R, D>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity<T2, R, D>) -> Self
fn from_superset_unchecked(sim: &Similarity<T2, R, D>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D>,
impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R: AbstractRotation<T2, D>,
sourcefn to_superset(&self) -> Similarity<T2, R, D>
fn to_superset(&self) -> Similarity<T2, R, D>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity<T2, R, D>) -> bool
fn is_in_subset(sim: &Similarity<T2, R, D>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity<T2, R, D>) -> Self
fn from_superset_unchecked(sim: &Similarity<T2, R, D>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Isometry<T1, R1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
impl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Isometry<T1, R1, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
sourcefn to_superset(&self) -> Similarity<T2, R2, D>
fn to_superset(&self) -> Similarity<T2, R2, D>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity<T2, R2, D>) -> bool
fn is_in_subset(sim: &Similarity<T2, R2, D>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity<T2, R2, D>) -> Self
fn from_superset_unchecked(sim: &Similarity<T2, R2, D>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Similarity<T1, R1, D> where
T1: RealField + SubsetOf<T2>,
T2: RealField + SupersetOf<T1>,
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
impl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Similarity<T1, R1, D> where
T1: RealField + SubsetOf<T2>,
T2: RealField + SupersetOf<T1>,
R1: AbstractRotation<T1, D> + SubsetOf<R2>,
R2: AbstractRotation<T2, D>,
sourcefn to_superset(&self) -> Similarity<T2, R2, D>
fn to_superset(&self) -> Similarity<T2, R2, D>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity<T2, R2, D>) -> bool
fn is_in_subset(sim: &Similarity<T2, R2, D>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity<T2, R2, D>) -> Self
fn from_superset_unchecked(sim: &Similarity<T2, R2, D>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2> SubsetOf<Similarity<T2, Unit<Quaternion<T2>>, 3>> for UnitDualQuaternion<T1> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
impl<T1, T2> SubsetOf<Similarity<T2, Unit<Quaternion<T2>>, 3>> for UnitDualQuaternion<T1> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
sourcefn to_superset(&self) -> Similarity3<T2>
fn to_superset(&self) -> Similarity3<T2>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(sim: &Similarity3<T2>) -> bool
fn is_in_subset(sim: &Similarity3<T2>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(sim: &Similarity3<T2>) -> Self
fn from_superset_unchecked(sim: &Similarity3<T2>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T1, T2, R, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Similarity<T1, R, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
C: SuperTCategoryOf<TAffine>,
R: AbstractRotation<T1, D> + SubsetOf<OMatrix<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>> + SubsetOf<OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
Const<D>: DimNameAdd<U1> + DimMin<Const<D>, Output = Const<D>>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
impl<T1, T2, R, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Similarity<T1, R, D> where
T1: RealField,
T2: RealField + SupersetOf<T1>,
C: SuperTCategoryOf<TAffine>,
R: AbstractRotation<T1, D> + SubsetOf<OMatrix<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>> + SubsetOf<OMatrix<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>>,
Const<D>: DimNameAdd<U1> + DimMin<Const<D>, Output = Const<D>>,
DefaultAllocator: Allocator<T1, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>> + Allocator<T2, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>,
sourcefn to_superset(&self) -> Transform<T2, C, D>
fn to_superset(&self) -> Transform<T2, C, D>
The inclusion map: converts self
to the equivalent element of its superset.
sourcefn is_in_subset(t: &Transform<T2, C, D>) -> bool
fn is_in_subset(t: &Transform<T2, C, D>) -> bool
Checks if element
is actually part of the subset Self
(and can be converted to it).
sourcefn from_superset_unchecked(t: &Transform<T2, C, D>) -> Self
fn from_superset_unchecked(t: &Transform<T2, C, D>) -> Self
Use with care! Same as self.to_superset
but without any property checks. Always succeeds.
sourcefn 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
sourceimpl<T: RealField + RealField, R, const D: usize> Transformation<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> Transformation<OPoint<T, Const<D>>> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourcefn transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
fn transform_point(&self, pt: &Point<T, D>) -> Point<T, D>
Applies this group’s action on a point from the euclidean space.
sourcefn transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
fn transform_vector(&self, v: &SVector<T, D>) -> SVector<T, D>
Applies this group’s action on a vector from the euclidean space. Read more
sourceimpl<T: RealField + RealField, R, const D: usize> TwoSidedInverse<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> TwoSidedInverse<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
sourcefn two_sided_inverse(&self) -> Self
fn two_sided_inverse(&self) -> Self
Returns the two_sided_inverse of self
, relative to the operator O
. Read more
sourcefn two_sided_inverse_mut(&mut self)
fn two_sided_inverse_mut(&mut self)
In-place inversion of self
, relative to the operator O
. Read more
sourceimpl<T: RealField, R, const D: usize> UlpsEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + UlpsEq<Epsilon = T::Epsilon>,
T::Epsilon: Clone,
impl<T: RealField, R, const D: usize> UlpsEq<Similarity<T, R, D>> for Similarity<T, R, D> where
R: AbstractRotation<T, D> + UlpsEq<Epsilon = T::Epsilon>,
T::Epsilon: Clone,
impl<T: RealField + RealField, R, const D: usize> AbstractGroup<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: RealField + RealField, R, const D: usize> AbstractLoop<Multiplicative> for Similarity<T, R, D> where
R: Rotation<Point<T, D>> + AbstractRotation<T, D>,
impl<T: Copy, R: Copy, const D: usize> Copy for Similarity<T, R, D>
impl<T: DeviceCopy, R: DeviceCopy, const D: usize> DeviceCopy for Similarity<T, R, D>
impl<T: SimdRealField, R, const D: usize> Eq for Similarity<T, R, D> where
R: AbstractRotation<T, D> + Eq,
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
sourceimpl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
sourcefn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
sourceimpl<T> ArchiveUnsized for T where
T: Archive,
impl<T> ArchiveUnsized for T where
T: Archive,
type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike Archive
, it may be unsized. Read more
type MetadataResolver = ()
type MetadataResolver = ()
The resolver for the metadata of this type. Read more
sourceunsafe fn resolve_metadata(
&self,
usize,
<T as ArchiveUnsized>::MetadataResolver,
*mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
)
unsafe fn resolve_metadata(
&self,
usize,
<T as ArchiveUnsized>::MetadataResolver,
*mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata
)
Creates the archived version of the metadata for this value at the given position and writes it to the given output. Read more
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
sourceimpl<T, S> SerializeUnsized<S> for T where
T: Serialize<S>,
S: Serializer + ?Sized,
impl<T, S> SerializeUnsized<S> for T where
T: Serialize<S>,
S: Serializer + ?Sized,
sourceimpl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
sourcefn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
sourcefn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
sourcefn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
sourcefn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
sourceimpl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
sourcefn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
sourcefn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
sourceunsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
sourcefn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.