Struct nalgebra::geometry::Similarity
source · #[repr(C)]pub struct Similarity<N: Real, D: DimName, R>where
DefaultAllocator: Allocator<N, D>,{
pub isometry: Isometry<N, D, R>,
/* private fields */
}
Expand description
A similarity, i.e., an uniform scaling, followed by a rotation, followed by a translation.
Fields§
§isometry: Isometry<N, D, R>
The part of this similarity that does not include the scaling factor.
Implementations§
source§impl<N: Real, D: DimName, R> Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
sourcepub fn from_parts(
translation: Translation<N, D>,
rotation: R,
scaling: N
) -> Similarity<N, D, R>
pub fn from_parts(
translation: Translation<N, D>,
rotation: R,
scaling: N
) -> Similarity<N, D, R>
Creates a new similarity from its rotational and translational parts.
sourcepub fn from_isometry(
isometry: Isometry<N, D, R>,
scaling: N
) -> Similarity<N, D, R>
pub fn from_isometry(
isometry: Isometry<N, D, R>,
scaling: N
) -> Similarity<N, D, R>
Creates a new similarity from its rotational and translational parts.
sourcepub fn from_scaling(scaling: N) -> Similarity<N, D, R>
pub fn from_scaling(scaling: N) -> Similarity<N, D, R>
Creates a new similarity that applies only a scaling factor.
sourcepub fn inverse(&self) -> Similarity<N, D, R>
pub fn inverse(&self) -> Similarity<N, D, R>
Inverts self
.
sourcepub fn inverse_mut(&mut self)
pub fn inverse_mut(&mut self)
Inverts self
in-place.
sourcepub fn set_scaling(&mut self, scaling: N)
pub fn set_scaling(&mut self, scaling: N)
The scaling factor of this similarity transformation.
sourcepub fn prepend_scaling(&self, scaling: N) -> Self
pub fn prepend_scaling(&self, scaling: N) -> Self
The similarity transformation that applies a scaling factor scaling
before self
.
sourcepub fn append_scaling(&self, scaling: N) -> Self
pub fn append_scaling(&self, scaling: N) -> Self
The similarity transformation that applies a scaling factor scaling
after self
.
sourcepub fn prepend_scaling_mut(&mut self, scaling: N)
pub fn prepend_scaling_mut(&mut self, scaling: N)
Sets self
to the similarity transformation that applies a scaling factor scaling
before self
.
sourcepub fn append_scaling_mut(&mut self, scaling: N)
pub fn append_scaling_mut(&mut self, scaling: N)
Sets self
to the similarity transformation that applies a scaling factor scaling
after self
.
sourcepub fn append_translation_mut(&mut self, t: &Translation<N, D>)
pub fn append_translation_mut(&mut self, t: &Translation<N, 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<N, D>)
pub fn append_rotation_wrt_point_mut(&mut self, r: &R, p: &Point<N, 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
.
source§impl<N: Real, D: DimName, R> Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
sourcepub fn to_homogeneous(&self) -> MatrixN<N, DimNameSum<D, U1>>where
D: DimNameAdd<U1>,
R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
pub fn to_homogeneous(&self) -> MatrixN<N, DimNameSum<D, U1>>where
D: DimNameAdd<U1>,
R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
Converts this similarity into its equivalent homogeneous transformation matrix.
source§impl<N: Real, D: DimName, R> Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
sourcepub fn rotation_wrt_point(r: R, p: Point<N, D>, scaling: N) -> Self
pub fn rotation_wrt_point(r: R, p: Point<N, D>, scaling: N) -> Self
The similarity that applies the scaling factor scaling
, followed by the rotation r
with
its axis passing through the point p
.
source§impl<N: Real> Similarity<N, U2, UnitComplex<N>>
impl<N: Real> Similarity<N, U2, UnitComplex<N>>
source§impl<N: Real> Similarity<N, U3, Rotation3<N>>
impl<N: Real> Similarity<N, U3, Rotation3<N>>
sourcepub fn new(translation: Vector3<N>, axisangle: Vector3<N>, scaling: N) -> Self
pub fn new(translation: Vector3<N>, axisangle: Vector3<N>, scaling: N) -> Self
Creates a new similarity from a translation, rotation axis-angle, and scaling factor.
sourcepub fn new_observer_frame(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> Self
pub fn new_observer_frame(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> 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.
sourcepub fn look_at_rh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> Self
pub fn look_at_rh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> 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
.
sourcepub fn look_at_lh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> Self
pub fn look_at_lh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> 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
.
source§impl<N: Real> Similarity<N, U3, UnitQuaternion<N>>
impl<N: Real> Similarity<N, U3, UnitQuaternion<N>>
sourcepub fn new(translation: Vector3<N>, axisangle: Vector3<N>, scaling: N) -> Self
pub fn new(translation: Vector3<N>, axisangle: Vector3<N>, scaling: N) -> Self
Creates a new similarity from a translation, rotation axis-angle, and scaling factor.
sourcepub fn new_observer_frame(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> Self
pub fn new_observer_frame(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> 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.
sourcepub fn look_at_rh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> Self
pub fn look_at_rh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> 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
.
sourcepub fn look_at_lh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> Self
pub fn look_at_lh(
eye: &Point3<N>,
target: &Point3<N>,
up: &Vector3<N>,
scaling: N
) -> 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
.
Trait Implementations§
source§impl<N: Real, D: DimName, R> AbsDiffEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + AbsDiffEq<Epsilon = N::Epsilon>,
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
impl<N: Real, D: DimName, R> AbsDiffEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + AbsDiffEq<Epsilon = N::Epsilon>,
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
source§fn default_epsilon() -> Self::Epsilon
fn default_epsilon() -> Self::Epsilon
source§impl<N: Real, D: DimName, R> AbstractMagma<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> AbstractMagma<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> AffineTransformation<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> AffineTransformation<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type NonUniformScaling = N
type NonUniformScaling = N
§type Translation = Translation<N, D>
type Translation = Translation<N, D>
source§fn decompose(&self) -> (Translation<N, D>, R, N, R)
fn decompose(&self) -> (Translation<N, D>, R, N, R)
source§fn append_translation(&self, t: &Self::Translation) -> Self
fn append_translation(&self, t: &Self::Translation) -> Self
source§fn prepend_translation(&self, t: &Self::Translation) -> Self
fn prepend_translation(&self, t: &Self::Translation) -> Self
source§fn append_rotation(&self, r: &Self::Rotation) -> Self
fn append_rotation(&self, r: &Self::Rotation) -> Self
source§fn prepend_rotation(&self, r: &Self::Rotation) -> Self
fn prepend_rotation(&self, r: &Self::Rotation) -> Self
source§fn append_scaling(&self, s: &Self::NonUniformScaling) -> Self
fn append_scaling(&self, s: &Self::NonUniformScaling) -> Self
source§fn prepend_scaling(&self, s: &Self::NonUniformScaling) -> Self
fn prepend_scaling(&self, s: &Self::NonUniformScaling) -> Self
source§impl<N: Real, D: DimName, R: Rotation<Point<N, D>> + Clone> Clone for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R: Rotation<Point<N, D>> + Clone> Clone for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
source§impl<N: Debug + Real, D: Debug + DimName, R: Debug> Debug for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
impl<N: Debug + Real, D: Debug + DimName, R: Debug> Debug for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
source§impl<N, D: DimName, R> Display for Similarity<N, D, R>where
N: Real + Display,
R: Rotation<Point<N, D>> + Display,
DefaultAllocator: Allocator<N, D> + Allocator<usize, D>,
impl<N, D: DimName, R> Display for Similarity<N, D, R>where
N: Real + Display,
R: Rotation<Point<N, D>> + Display,
DefaultAllocator: Allocator<N, D> + Allocator<usize, D>,
source§impl<N: Real, D: DimName, R> Distribution<Similarity<N, D, R>> for Standardwhere
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
Standard: Distribution<N> + Distribution<R>,
impl<N: Real, D: DimName, R> Distribution<Similarity<N, D, R>> for Standardwhere
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
Standard: Distribution<N> + Distribution<R>,
source§impl<'a, 'b, N: Real, D: DimName, R> Div<&'b Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Div<&'b Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'b, N: Real, D: DimName, R> Div<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Div<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Div<&'b R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Div<&'b R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'b, N: Real, D: DimName, R> Div<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Div<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<'a, 'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Div<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<'a, 'b, N: Real, D: DimName> Div<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<'a, 'b, N: Real, D: DimName> Div<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<'b, N: Real, D: DimName> Div<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<'b, N: Real, D: DimName> Div<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<'a, 'b, N: Real> Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<'a, 'b, N: Real> Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
/
operator.source§fn div(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn div(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
/
operation. Read moresource§impl<'b, N: Real> Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<'b, N: Real> Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
/
operator.source§fn div(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn div(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
/
operation. Read moresource§impl<'a, N: Real, D: DimName, R> Div<Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Div<Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Div<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Div<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, N: Real, D: DimName, R> Div<R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Div<R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Div<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Div<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, N: Real, D: DimName, R> Div<Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Div<Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<'a, N: Real, D: DimName, R> Div<Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Div<Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<N: Real, D: DimName, R> Div<Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Div<Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<N: Real, D: DimName, R> Div<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Div<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
/
operator.source§impl<'a, N: Real, D: DimName> Div<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<'a, N: Real, D: DimName> Div<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<N: Real, D: DimName> Div<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<N: Real, D: DimName> Div<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<'a, N: Real> Div<Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<'a, N: Real> Div<Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
/
operator.source§fn div(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn div(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
/
operation. Read moresource§impl<N: Real> Div<Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<N: Real> Div<Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
/
operator.source§fn div(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn div(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
/
operation. Read moresource§impl<'b, N: Real, D: DimName, R> DivAssign<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> DivAssign<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn div_assign(&mut self, rhs: &'b Isometry<N, D, R>)
fn div_assign(&mut self, rhs: &'b Isometry<N, D, R>)
/=
operation. Read moresource§impl<'b, N: Real, D: DimName, R> DivAssign<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> DivAssign<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn div_assign(&mut self, rhs: &'b R)
fn div_assign(&mut self, rhs: &'b R)
/=
operation. Read moresource§impl<'b, N: Real, D: DimName, R> DivAssign<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> DivAssign<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn div_assign(&mut self, rhs: &'b Similarity<N, D, R>)
fn div_assign(&mut self, rhs: &'b Similarity<N, D, R>)
/=
operation. Read moresource§impl<N: Real, D: DimName, R> DivAssign<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> DivAssign<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn div_assign(&mut self, rhs: Isometry<N, D, R>)
fn div_assign(&mut self, rhs: Isometry<N, D, R>)
/=
operation. Read moresource§impl<N: Real, D: DimName, R> DivAssign<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> DivAssign<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn div_assign(&mut self, rhs: R)
fn div_assign(&mut self, rhs: R)
/=
operation. Read moresource§impl<N: Real, D: DimName, R> DivAssign<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> DivAssign<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn div_assign(&mut self, rhs: Similarity<N, D, R>)
fn div_assign(&mut self, rhs: Similarity<N, D, R>)
/=
operation. Read moresource§impl<N: Real, D: DimName, R> From<Similarity<N, D, R>> for MatrixN<N, DimNameSum<D, U1>>where
D: DimNameAdd<U1>,
R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>,
DefaultAllocator: Allocator<N, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
impl<N: Real, D: DimName, R> From<Similarity<N, D, R>> for MatrixN<N, DimNameSum<D, U1>>where
D: DimNameAdd<U1>,
R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>,
DefaultAllocator: Allocator<N, D> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>>,
source§fn from(sim: Similarity<N, D, R>) -> Self
fn from(sim: Similarity<N, D, R>) -> Self
source§impl<N: Real + Hash, D: DimName + Hash, R: Hash> Hash for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
Owned<N, D>: Hash,
impl<N: Real + Hash, D: DimName + Hash, R: Hash> Hash for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
Owned<N, D>: Hash,
source§impl<N: Real, D: DimName, R> Identity<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Identity<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Inverse<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Inverse<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'b, N: Real, D: DimName, R> Mul<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'b, N: Real, D: DimName, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Point<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Point<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'b, N: Real, D: DimName, R> Mul<&'b Point<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Point<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'b, N: Real, D: DimName, R> Mul<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for &'a Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for &'a Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Similarity<N, D, R>> for Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, 'b, N: Real, D: DimName> Mul<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<'a, 'b, N: Real, D: DimName> Mul<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<'b, N: Real, D: DimName> Mul<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<'b, N: Real, D: DimName> Mul<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<'a, 'b, N: Real> Mul<&'b Similarity<N, U2, Unit<Complex<N>>>> for &'a UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
impl<'a, 'b, N: Real> Mul<&'b Similarity<N, U2, Unit<Complex<N>>>> for &'a UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
source§fn mul(self, rhs: &'b Similarity<N, U2, UnitComplex<N>>) -> Self::Output
fn mul(self, rhs: &'b Similarity<N, U2, UnitComplex<N>>) -> Self::Output
*
operation. Read moresource§impl<'b, N: Real> Mul<&'b Similarity<N, U2, Unit<Complex<N>>>> for UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
impl<'b, N: Real> Mul<&'b Similarity<N, U2, Unit<Complex<N>>>> for UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
source§fn mul(self, rhs: &'b Similarity<N, U2, UnitComplex<N>>) -> Self::Output
fn mul(self, rhs: &'b Similarity<N, U2, UnitComplex<N>>) -> Self::Output
*
operation. Read moresource§impl<'a, 'b, N: Real> Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<'a, 'b, N: Real> Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
*
operator.source§fn mul(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn mul(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
*
operation. Read moresource§impl<'b, N: Real> Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<'b, N: Real> Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
*
operator.source§fn mul(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn mul(self, right: &'b Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
*
operation. Read moresource§impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, 'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<&'b Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Translation<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, 'b, N: Real, D: DimName, R> Mul<&'b Translation<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'b, N: Real, D: DimName, R> Mul<&'b Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> Mul<&'b Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, N: Real, D: DimName, R> Mul<Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Isometry<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Mul<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, N: Real, D: DimName, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, N: Real, D: DimName, R> Mul<Point<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Point<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Mul<Point<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Point<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, N: Real, D: DimName, R> Mul<R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<R> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> Mul<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<'a, N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for &'a Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for &'a Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<'a, N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for &'a Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for &'a Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for Isometry<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, U1>,
§type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
*
operator.source§impl<N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Similarity<N, D, R>> for Translation<N, D>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'a, N: Real, D: DimName> Mul<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<'a, N: Real, D: DimName> Mul<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<N: Real, D: DimName> Mul<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
impl<N: Real, D: DimName> Mul<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D>where
DefaultAllocator: Allocator<N, D, D> + Allocator<N, D, U1>,
source§impl<'a, N: Real> Mul<Similarity<N, U2, Unit<Complex<N>>>> for &'a UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
impl<'a, N: Real> Mul<Similarity<N, U2, Unit<Complex<N>>>> for &'a UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
source§fn mul(self, rhs: Similarity<N, U2, UnitComplex<N>>) -> Self::Output
fn mul(self, rhs: Similarity<N, U2, UnitComplex<N>>) -> Self::Output
*
operation. Read moresource§impl<N: Real> Mul<Similarity<N, U2, Unit<Complex<N>>>> for UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
impl<N: Real> Mul<Similarity<N, U2, Unit<Complex<N>>>> for UnitComplex<N>where
DefaultAllocator: Allocator<N, U2, U1>,
source§fn mul(self, rhs: Similarity<N, U2, UnitComplex<N>>) -> Self::Output
fn mul(self, rhs: Similarity<N, U2, UnitComplex<N>>) -> Self::Output
*
operation. Read moresource§impl<'a, N: Real> Mul<Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<'a, N: Real> Mul<Similarity<N, U3, Unit<Quaternion<N>>>> for &'a UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
*
operator.source§fn mul(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn mul(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
*
operation. Read moresource§impl<N: Real> Mul<Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
impl<N: Real> Mul<Similarity<N, U3, Unit<Quaternion<N>>>> for UnitQuaternion<N>where
DefaultAllocator: Allocator<N, U4, U1> + Allocator<N, U3, U1>,
§type Output = Similarity<N, U3, Unit<Quaternion<N>>>
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
*
operator.source§fn mul(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
fn mul(self, right: Similarity<N, U3, UnitQuaternion<N>>) -> Self::Output
*
operation. Read moresource§impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<'a, N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for &'a Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
impl<N, D: DimNameAdd<U1>, C: TCategoryMul<TAffine>, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> Mul<Transform<N, D, C>> for Similarity<N, D, R>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, D, U1> + Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, DimNameSum<D, U1>>,
source§impl<'a, N: Real, D: DimName, R> Mul<Translation<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'a, N: Real, D: DimName, R> Mul<Translation<N, D>> for &'a Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<N: Real, D: DimName, R> Mul<Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Mul<Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
§type Output = Similarity<N, D, R>
type Output = Similarity<N, D, R>
*
operator.source§impl<'b, N: Real, D: DimName, R> MulAssign<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> MulAssign<&'b Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: &'b Isometry<N, D, R>)
fn mul_assign(&mut self, rhs: &'b Isometry<N, D, R>)
*=
operation. Read moresource§impl<'b, N: Real, D: DimName, R> MulAssign<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> MulAssign<&'b R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: &'b R)
fn mul_assign(&mut self, rhs: &'b R)
*=
operation. Read moresource§impl<'b, N: Real, D: DimName, R> MulAssign<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> MulAssign<&'b Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
*=
operation. Read moresource§impl<'b, N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<'b, N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<&'b Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
*=
operation. Read moresource§impl<'b, N: Real, D: DimName, R> MulAssign<&'b Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<'b, N: Real, D: DimName, R> MulAssign<&'b Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: &'b Translation<N, D>)
fn mul_assign(&mut self, rhs: &'b Translation<N, D>)
*=
operation. Read moresource§impl<N: Real, D: DimName, R> MulAssign<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> MulAssign<Isometry<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: Isometry<N, D, R>)
fn mul_assign(&mut self, rhs: Isometry<N, D, R>)
*=
operation. Read moresource§impl<N: Real, D: DimName, R> MulAssign<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> MulAssign<R> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: R)
fn mul_assign(&mut self, rhs: R)
*=
operation. Read moresource§impl<N: Real, D: DimName, R> MulAssign<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> MulAssign<Similarity<N, D, R>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
*=
operation. Read moresource§impl<N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
impl<N, D: DimNameAdd<U1>, C: TCategory, R: SubsetOf<MatrixN<N, DimNameSum<D, U1>>>> MulAssign<Similarity<N, D, R>> for Transform<N, D, C>where
N: Scalar + Zero + One + ClosedAdd + ClosedMul + Real,
DefaultAllocator: Allocator<N, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N, D, U1>,
source§fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
*=
operation. Read moresource§impl<N: Real, D: DimName, R> MulAssign<Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> MulAssign<Translation<N, D>> for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn mul_assign(&mut self, rhs: Translation<N, D>)
fn mul_assign(&mut self, rhs: Translation<N, D>)
*=
operation. Read moresource§impl<N: Real, D: DimName, R> One for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> One for Similarity<N, D, R>where
R: AlgaRotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> PartialEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + PartialEq,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> PartialEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + PartialEq,
DefaultAllocator: Allocator<N, D>,
source§fn eq(&self, right: &Similarity<N, D, R>) -> bool
fn eq(&self, right: &Similarity<N, D, R>) -> bool
source§impl<N: Real, D: DimName, R> ProjectiveTransformation<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> ProjectiveTransformation<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
source§impl<N: Real, D: DimName, R> RelativeEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + RelativeEq<Epsilon = N::Epsilon>,
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
impl<N: Real, D: DimName, R> RelativeEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + RelativeEq<Epsilon = N::Epsilon>,
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
source§fn default_max_relative() -> Self::Epsilon
fn default_max_relative() -> Self::Epsilon
source§impl<N: Real, D: DimName, R> Similarity<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Similarity<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§fn translation(&self) -> Translation<N, D>
fn translation(&self) -> Translation<N, D>
source§fn translate_point(&self, pt: &E) -> E
fn translate_point(&self, pt: &E) -> E
source§fn rotate_point(&self, pt: &E) -> E
fn rotate_point(&self, pt: &E) -> E
source§fn scale_point(&self, pt: &E) -> E
fn scale_point(&self, pt: &E) -> E
source§fn 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
source§fn 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
source§fn inverse_translate_point(&self, pt: &E) -> E
fn inverse_translate_point(&self, pt: &E) -> E
source§fn inverse_rotate_point(&self, pt: &E) -> E
fn inverse_rotate_point(&self, pt: &E) -> E
source§fn inverse_scale_point(&self, pt: &E) -> E
fn inverse_scale_point(&self, pt: &E) -> E
source§fn 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
source§fn 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
source§impl<N1, N2, D, R> SubsetOf<Matrix<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> for Similarity<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
impl<N1, N2, D, R> SubsetOf<Matrix<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> for Similarity<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
fn to_superset(&self) -> MatrixN<N2, DimNameSum<D, U1>>
self
to the equivalent element of its superset.source§fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
fn is_in_subset(m: &MatrixN<N2, DimNameSum<D, U1>>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
unsafe fn from_superset_unchecked(m: &MatrixN<N2, DimNameSum<D, U1>>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D: DimName, R> SubsetOf<Similarity<N2, D, R>> for Rotation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: AlgaRotation<Point<N2, D>> + SupersetOf<Rotation<N1, D>>,
DefaultAllocator: Allocator<N1, D, D> + Allocator<N2, D>,
impl<N1, N2, D: DimName, R> SubsetOf<Similarity<N2, D, R>> for Rotation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: AlgaRotation<Point<N2, D>> + SupersetOf<Rotation<N1, D>>,
DefaultAllocator: Allocator<N1, D, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Similarity<N2, D, R>
fn to_superset(&self) -> Similarity<N2, D, R>
self
to the equivalent element of its superset.source§fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R>) -> Self
unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D: DimName, R> SubsetOf<Similarity<N2, D, R>> for Translation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D>,
impl<N1, N2, D: DimName, R> SubsetOf<Similarity<N2, D, R>> for Translation<N1, D>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Similarity<N2, D, R>
fn to_superset(&self) -> Similarity<N2, D, R>
self
to the equivalent element of its superset.source§fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R>) -> Self
unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D: DimName, R1, R2> SubsetOf<Similarity<N2, D, R2>> for Isometry<N1, D, R1>where
N1: Real,
N2: Real + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D>,
impl<N1, N2, D: DimName, R1, R2> SubsetOf<Similarity<N2, D, R2>> for Isometry<N1, D, R1>where
N1: Real,
N2: Real + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Similarity<N2, D, R2>
fn to_superset(&self) -> Similarity<N2, D, R2>
self
to the equivalent element of its superset.source§fn is_in_subset(sim: &Similarity<N2, D, R2>) -> bool
fn is_in_subset(sim: &Similarity<N2, D, R2>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R2>) -> Self
unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R2>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D: DimName, R1, R2> SubsetOf<Similarity<N2, D, R2>> for Similarity<N1, D, R1>where
N1: Real + SubsetOf<N2>,
N2: Real + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D>,
impl<N1, N2, D: DimName, R1, R2> SubsetOf<Similarity<N2, D, R2>> for Similarity<N1, D, R1>where
N1: Real + SubsetOf<N2>,
N2: Real + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Similarity<N2, D, R2>
fn to_superset(&self) -> Similarity<N2, D, R2>
self
to the equivalent element of its superset.source§fn is_in_subset(sim: &Similarity<N2, D, R2>) -> bool
fn is_in_subset(sim: &Similarity<N2, D, R2>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R2>) -> Self
unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R2>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, R> SubsetOf<Similarity<N2, U2, R>> for UnitComplex<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: AlgaRotation<Point2<N2>> + SupersetOf<UnitComplex<N1>>,
impl<N1, N2, R> SubsetOf<Similarity<N2, U2, R>> for UnitComplex<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: AlgaRotation<Point2<N2>> + SupersetOf<UnitComplex<N1>>,
source§fn to_superset(&self) -> Similarity<N2, U2, R>
fn to_superset(&self) -> Similarity<N2, U2, R>
self
to the equivalent element of its superset.source§fn is_in_subset(sim: &Similarity<N2, U2, R>) -> bool
fn is_in_subset(sim: &Similarity<N2, U2, R>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(sim: &Similarity<N2, U2, R>) -> Self
unsafe fn from_superset_unchecked(sim: &Similarity<N2, U2, R>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, R> SubsetOf<Similarity<N2, U3, R>> for UnitQuaternion<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: AlgaRotation<Point3<N2>> + SupersetOf<UnitQuaternion<N1>>,
impl<N1, N2, R> SubsetOf<Similarity<N2, U3, R>> for UnitQuaternion<N1>where
N1: Real,
N2: Real + SupersetOf<N1>,
R: AlgaRotation<Point3<N2>> + SupersetOf<UnitQuaternion<N1>>,
source§fn to_superset(&self) -> Similarity<N2, U3, R>
fn to_superset(&self) -> Similarity<N2, U3, R>
self
to the equivalent element of its superset.source§fn is_in_subset(sim: &Similarity<N2, U3, R>) -> bool
fn is_in_subset(sim: &Similarity<N2, U3, R>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(sim: &Similarity<N2, U3, R>) -> Self
unsafe fn from_superset_unchecked(sim: &Similarity<N2, U3, R>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Similarity<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Similarity<N1, D, R>where
N1: Real,
N2: Real + SupersetOf<N1>,
C: SuperTCategoryOf<TAffine>,
R: Rotation<Point<N1, D>> + SubsetOf<MatrixN<N1, DimNameSum<D, U1>>> + SubsetOf<MatrixN<N2, DimNameSum<D, U1>>>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
DefaultAllocator: Allocator<N1, D> + Allocator<N1, D, D> + Allocator<N1, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<N2, DimNameSum<D, U1>, DimNameSum<D, U1>> + Allocator<(usize, usize), D> + Allocator<N2, D, D> + Allocator<N2, D>,
source§fn to_superset(&self) -> Transform<N2, D, C>
fn to_superset(&self) -> Transform<N2, D, C>
self
to the equivalent element of its superset.source§fn is_in_subset(t: &Transform<N2, D, C>) -> bool
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
element
is actually part of the subset Self
(and can be converted to it).source§unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
unsafe fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Self
self.to_superset
but without any property checks. Always succeeds.source§impl<N: Real, D: DimName, R> Transformation<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> Transformation<Point<N, D>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
source§impl<N: Real, D: DimName, R> UlpsEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + UlpsEq<Epsilon = N::Epsilon>,
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
impl<N: Real, D: DimName, R> UlpsEq<Similarity<N, D, R>> for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + UlpsEq<Epsilon = N::Epsilon>,
DefaultAllocator: Allocator<N, D>,
N::Epsilon: Copy,
impl<N: Real, D: DimName, R> AbstractGroup<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> AbstractLoop<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> AbstractMonoid<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> AbstractQuasigroup<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName, R> AbstractSemigroup<Multiplicative> for Similarity<N, D, R>where
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D>,
impl<N: Real, D: DimName + Copy, R: Rotation<Point<N, D>> + Copy> Copy for Similarity<N, D, R>where
DefaultAllocator: Allocator<N, D>,
Owned<N, D>: Copy,
impl<N: Real, D: DimName, R> Eq for Similarity<N, D, R>where
R: Rotation<Point<N, D>> + Eq,
DefaultAllocator: Allocator<N, D>,
Auto Trait Implementations§
impl<N, D, R> !RefUnwindSafe for Similarity<N, D, R>
impl<N, D, R> !Send for Similarity<N, D, R>
impl<N, D, R> !Sync for Similarity<N, D, R>
impl<N, D, R> !Unpin for Similarity<N, D, R>
impl<N, D, R> !UnwindSafe for Similarity<N, D, R>
Blanket Implementations§
source§impl<T> Rand for Twhere
Standard: Distribution<T>,
impl<T> Rand for Twhere
Standard: Distribution<T>,
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).source§unsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.