[−][src]Struct na::geometry::Similarity
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.
Methods
impl<N, D, R> Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
pub fn from_parts(
translation: Translation<N, D>,
rotation: R,
scaling: N
) -> Similarity<N, D, R>
[src]
translation: Translation<N, D>,
rotation: R,
scaling: N
) -> Similarity<N, D, R>
Creates a new similarity from its rotational and translational parts.
pub fn from_isometry(
isometry: Isometry<N, D, R>,
scaling: N
) -> Similarity<N, D, R>
[src]
isometry: Isometry<N, D, R>,
scaling: N
) -> Similarity<N, D, R>
Creates a new similarity from its rotational and translational parts.
pub fn from_scaling(scaling: N) -> Similarity<N, D, R>
[src]
Creates a new similarity that applies only a scaling factor.
pub fn inverse(&self) -> Similarity<N, D, R>
[src]
Inverts self
.
pub fn inverse_mut(&mut self)
[src]
Inverts self
in-place.
pub fn set_scaling(&mut self, scaling: N)
[src]
The scaling factor of this similarity transformation.
pub fn scaling(&self) -> N
[src]
The scaling factor of this similarity transformation.
pub fn prepend_scaling(&self, scaling: N) -> Similarity<N, D, R>
[src]
The similarity transformation that applies a scaling factor scaling
before self
.
pub fn append_scaling(&self, scaling: N) -> Similarity<N, D, R>
[src]
The similarity transformation that applies a scaling factor scaling
after self
.
pub fn prepend_scaling_mut(&mut self, scaling: N)
[src]
Sets self
to the similarity transformation that applies a scaling factor scaling
before self
.
pub fn append_scaling_mut(&mut self, scaling: N)
[src]
Sets self
to the similarity transformation that applies a scaling factor scaling
after self
.
pub fn append_translation_mut(&mut self, t: &Translation<N, D>)
[src]
Appends to self
the given translation in-place.
pub fn append_rotation_mut(&mut self, r: &R)
[src]
Appends to self
the given rotation in-place.
pub fn append_rotation_wrt_point_mut(&mut self, r: &R, p: &Point<N, D>)
[src]
Appends in-place to self
a rotation centered at the point p
, i.e., the rotation that
lets p
invariant.
pub fn append_rotation_wrt_center_mut(&mut self, r: &R)
[src]
Appends in-place to self
a rotation centered at the point with coordinates
self.translation
.
pub fn transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
Transform the given point by this similarity.
This is the same as the multiplication self * pt
.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); let sim = Similarity3::new(translation, axisangle, 3.0); let transformed_point = sim.transform_point(&Point3::new(4.0, 5.0, 6.0)); assert_relative_eq!(transformed_point, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
pub fn transform_vector(
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
[src]
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
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);
pub fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
Transform the given point by the inverse of this similarity. This may be cheaper than inverting the similarity and then transforming the given point.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); let sim = Similarity3::new(translation, axisangle, 2.0); let transformed_point = sim.inverse_transform_point(&Point3::new(4.0, 5.0, 6.0)); assert_relative_eq!(transformed_point, Point3::new(-1.5, 1.5, 1.5), epsilon = 1.0e-5);
pub fn inverse_transform_vector(
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
[src]
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
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);
impl<N, D, R> Similarity<N, D, R> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, U1>,
pub fn to_homogeneous(
&self
) -> Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer> where
D: DimNameAdd<U1>,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
[src]
&self
) -> Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer> where
D: DimNameAdd<U1>,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
Converts this similarity into its equivalent homogeneous transformation matrix.
impl<N, D, R> Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
pub fn identity() -> Similarity<N, D, R>
[src]
Creates a new identity similarity.
Example
let sim = Similarity2::identity(); let pt = Point2::new(1.0, 2.0); assert_eq!(sim * pt, pt); let sim = Similarity3::identity(); let pt = Point3::new(1.0, 2.0, 3.0); assert_eq!(sim * pt, pt);
impl<N, D, R> Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
pub fn rotation_wrt_point(
r: R,
p: Point<N, D>,
scaling: N
) -> Similarity<N, D, R>
[src]
r: R,
p: Point<N, D>,
scaling: N
) -> Similarity<N, D, R>
The similarity that applies the scaling factor scaling
, followed by the rotation r
with
its axis passing through the point p
.
Example
let rot = UnitComplex::new(f32::consts::FRAC_PI_2); let pt = Point2::new(3.0, 2.0); let sim = Similarity2::rotation_wrt_point(rot, pt, 4.0); assert_relative_eq!(sim * Point2::new(1.0, 2.0), Point2::new(-3.0, 3.0), epsilon = 1.0e-6);
impl<N> Similarity<N, U2, Rotation<N, U2>> where
N: RealField,
[src]
N: RealField,
pub fn new(
translation: Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>,
angle: N,
scaling: N
) -> Similarity<N, U2, Rotation<N, U2>>
[src]
translation: Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>,
angle: N,
scaling: N
) -> Similarity<N, U2, Rotation<N, U2>>
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);
impl<N> Similarity<N, U2, Unit<Complex<N>>> where
N: RealField,
[src]
N: RealField,
pub fn new(
translation: Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>,
angle: N,
scaling: N
) -> Similarity<N, U2, Unit<Complex<N>>>
[src]
translation: Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>,
angle: N,
scaling: N
) -> Similarity<N, U2, Unit<Complex<N>>>
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);
impl<N> Similarity<N, U3, Rotation<N, U3>> where
N: RealField,
[src]
N: RealField,
pub fn new(
translation: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
[src]
translation: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
Creates a new similarity from a translation, rotation axis-angle, and scaling factor.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); // Point and vector being transformed in the tests. let pt = Point3::new(4.0, 5.0, 6.0); let vec = Vector3::new(4.0, 5.0, 6.0); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5); // Similarity with its rotation part represented as a Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
pub fn face_towards(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
Creates an similarity that corresponds to a scaling factor and a local frame of
an observer standing at the point eye
and looking toward target
.
It maps the view direction target - eye
to the positive z
axis and the origin to the
eye
.
Arguments
- eye - The observer position.
- target - The target position.
- up - Vertical direction. The only requirement of this parameter is to not be collinear
to
eye - at
. Non-collinearity is not checked.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);
pub fn new_observer_frames(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
renamed to face_towards
Deprecated: Use [SimilarityMatrix3::face_towards] instead.
pub fn look_at_rh(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
Builds a right-handed look-at view matrix including scaling factor.
This conforms to the common notion of right handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let iso = Similarity3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = SimilarityMatrix3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);
pub fn look_at_lh(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Rotation<N, U3>>
Builds a left-handed look-at view matrix including a scaling factor.
This conforms to the common notion of left handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);
impl<N> Similarity<N, U3, Unit<Quaternion<N>>> where
N: RealField,
[src]
N: RealField,
pub fn new(
translation: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
[src]
translation: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
Creates a new similarity from a translation, rotation axis-angle, and scaling factor.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; let translation = Vector3::new(1.0, 2.0, 3.0); // Point and vector being transformed in the tests. let pt = Point3::new(4.0, 5.0, 6.0); let vec = Vector3::new(4.0, 5.0, 6.0); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5); // Similarity with its rotation part represented as a Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::new(translation, axisangle, 3.0); assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5); assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
pub fn face_towards(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
Creates an similarity that corresponds to a scaling factor and a local frame of
an observer standing at the point eye
and looking toward target
.
It maps the view direction target - eye
to the positive z
axis and the origin to the
eye
.
Arguments
- eye - The observer position.
- target - The target position.
- up - Vertical direction. The only requirement of this parameter is to not be collinear
to
eye - at
. Non-collinearity is not checked.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::face_towards(&eye, &target, &up, 3.0); assert_eq!(sim * Point3::origin(), eye); assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);
pub fn new_observer_frames(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
renamed to face_towards
Deprecated: Use [SimilarityMatrix3::face_towards] instead.
pub fn look_at_rh(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
Builds a right-handed look-at view matrix including scaling factor.
This conforms to the common notion of right handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let iso = Similarity3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = SimilarityMatrix3::look_at_rh(&eye, &target, &up, 3.0); assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);
pub fn look_at_lh(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
[src]
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>,
scaling: N
) -> Similarity<N, U3, Unit<Quaternion<N>>>
Builds a left-handed look-at view matrix including a scaling factor.
This conforms to the common notion of left handed look-at matrix from the computer graphics community.
Arguments
- eye - The eye position.
- target - The target position.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
target - eye
.
Example
let eye = Point3::new(1.0, 2.0, 3.0); let target = Point3::new(2.0, 2.0, 3.0); let up = Vector3::y(); // Similarity with its rotation part represented as a UnitQuaternion let sim = Similarity3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6); // Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let sim = SimilarityMatrix3::look_at_lh(&eye, &target, &up, 3.0); assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);
Trait Implementations
impl<N, D, R> TwoSidedInverse<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn two_sided_inverse(&self) -> Similarity<N, D, R>
[src]
fn two_sided_inverse_mut(&mut self)
[src]
impl<'b, N, D, C, R> MulAssign<&'b Similarity<N, D, R>> for Transform<N, D, C> where
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
[src]
impl<'b, N, D, R> MulAssign<&'b R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: &'b R)
[src]
impl<N, D, R> MulAssign<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
[src]
impl<N, D, R> MulAssign<R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: R)
[src]
impl<N, D, R> MulAssign<Translation<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: Translation<N, D>)
[src]
impl<'b, N, D, R> MulAssign<&'b Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: &'b Isometry<N, D, R>)
[src]
impl<N, D, C, R> MulAssign<Similarity<N, D, R>> for Transform<N, D, C> where
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: Similarity<N, D, R>)
[src]
impl<'b, N, D, R> MulAssign<&'b Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: &'b Similarity<N, D, R>)
[src]
impl<'b, N, D, R> MulAssign<&'b Translation<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: &'b Translation<N, D>)
[src]
impl<N, D, R> MulAssign<Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn mul_assign(&mut self, rhs: Isometry<N, D, R>)
[src]
impl<N, D, R> Transformation<Point<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
fn transform_vector(
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
[src]
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
impl<N, D, R> Clone for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Clone + Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Clone + Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn clone(&self) -> Similarity<N, D, R>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<N, D, R> AbstractSemigroup<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn prop_is_associative_approx(args: (Self, Self, Self)) -> bool where
Self: RelativeEq<Self>,
[src]
Self: RelativeEq<Self>,
Returns true
if associativity holds for the given arguments. Approximate equality is used for verifications. Read more
fn prop_is_associative(args: (Self, Self, Self)) -> bool where
Self: Eq,
[src]
Self: Eq,
Returns true
if associativity holds for the given arguments.
impl<N, D, R> Display for Similarity<N, D, R> where
D: DimName,
N: RealField + Display,
R: Rotation<Point<N, D>> + Display,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<usize, D, U1>,
[src]
D: DimName,
N: RealField + Display,
R: Rotation<Point<N, D>> + Display,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<usize, D, U1>,
impl<N, D, R> AbstractGroup<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
impl<N, D, R> PartialEq<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + PartialEq<R>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + PartialEq<R>,
DefaultAllocator: Allocator<N, D, U1>,
fn eq(&self, right: &Similarity<N, D, R>) -> bool
[src]
#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests for !=
.
impl<N, D, R> RelativeEq<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + RelativeEq<R, Epsilon = <N as AbsDiffEq<N>>::Epsilon>,
DefaultAllocator: Allocator<N, D, U1>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + RelativeEq<R, Epsilon = <N as AbsDiffEq<N>>::Epsilon>,
DefaultAllocator: Allocator<N, D, U1>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
fn default_max_relative(
) -> <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
[src]
) -> <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
fn relative_eq(
&self,
other: &Similarity<N, D, R>,
epsilon: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon,
max_relative: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
) -> bool
[src]
&self,
other: &Similarity<N, D, R>,
epsilon: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon,
max_relative: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
) -> bool
fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
The inverse of ApproxEq::relative_eq
.
impl<'b, N, D, R> DivAssign<&'b Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn div_assign(&mut self, rhs: &'b Similarity<N, D, R>)
[src]
impl<'b, N, D, R> DivAssign<&'b Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn div_assign(&mut self, rhs: &'b Isometry<N, D, R>)
[src]
impl<N, D, R> DivAssign<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn div_assign(&mut self, rhs: Similarity<N, D, R>)
[src]
impl<N, D, R> DivAssign<R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn div_assign(&mut self, rhs: R)
[src]
impl<N, D, R> DivAssign<Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn div_assign(&mut self, rhs: Isometry<N, D, R>)
[src]
impl<'b, N, D, R> DivAssign<&'b R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn div_assign(&mut self, rhs: &'b R)
[src]
impl<N, D, R> Similarity<Point<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Scaling = N
The type of the pure (uniform) scaling part of this similarity transformation.
fn translation(&self) -> Translation<N, D>
[src]
fn rotation(&self) -> R
[src]
fn scaling(&self) -> N
[src]
fn translate_point(&self, pt: &E) -> E
[src]
Applies this transformation's pure translational part to a point.
fn rotate_point(&self, pt: &E) -> E
[src]
Applies this transformation's pure rotational part to a point.
fn scale_point(&self, pt: &E) -> E
[src]
Applies this transformation's pure scaling part to a point.
fn rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation's pure rotational part to a vector.
fn scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation's pure scaling part to a vector.
fn inverse_translate_point(&self, pt: &E) -> E
[src]
Applies this transformation inverse's pure translational part to a point.
fn inverse_rotate_point(&self, pt: &E) -> E
[src]
Applies this transformation inverse's pure rotational part to a point.
fn inverse_scale_point(&self, pt: &E) -> E
[src]
Applies this transformation inverse's pure scaling part to a point.
fn inverse_rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation inverse's pure rotational part to a vector.
fn inverse_scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation inverse's pure scaling part to a vector.
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
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<Matrix<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> + 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>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
[src]
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<Matrix<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> + 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>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(
&self
) -> 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>
[src]
&self
) -> 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>
fn is_in_subset(
m: &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>
) -> bool
[src]
m: &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>
) -> bool
unsafe fn from_superset_unchecked(
m: &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>
) -> Similarity<N1, D, R>
[src]
m: &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>
) -> Similarity<N1, D, R>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R> SubsetOf<Similarity<N2, D, R>> for Rotation<N1, D> where
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, D>> + SupersetOf<Rotation<N1, D>>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
[src]
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, D>> + SupersetOf<Rotation<N1, D>>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(&self) -> Similarity<N2, D, R>
[src]
fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
[src]
unsafe fn from_superset_unchecked(sim: &Similarity<N2, D, R>) -> Rotation<N1, D>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R> SubsetOf<Similarity<N2, D, R>> for Translation<N1, D> where
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N2, D, U1>,
[src]
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(&self) -> Similarity<N2, D, R>
[src]
fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
[src]
unsafe fn from_superset_unchecked(
sim: &Similarity<N2, D, R>
) -> Translation<N1, D>
[src]
sim: &Similarity<N2, D, R>
) -> Translation<N1, D>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, R> SubsetOf<Similarity<N2, U2, R>> for Unit<Complex<N1>> where
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, U2>> + SupersetOf<Unit<Complex<N1>>>,
[src]
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, U2>> + SupersetOf<Unit<Complex<N1>>>,
fn to_superset(&self) -> Similarity<N2, U2, R>
[src]
fn is_in_subset(sim: &Similarity<N2, U2, R>) -> bool
[src]
unsafe fn from_superset_unchecked(
sim: &Similarity<N2, U2, R>
) -> Unit<Complex<N1>>
[src]
sim: &Similarity<N2, U2, R>
) -> Unit<Complex<N1>>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R1, R2> SubsetOf<Similarity<N2, D, R2>> for Similarity<N1, D, R1> where
D: DimName,
N1: RealField + SubsetOf<N2>,
N2: RealField + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N2, D, U1>,
[src]
D: DimName,
N1: RealField + SubsetOf<N2>,
N2: RealField + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(&self) -> Similarity<N2, D, R2>
[src]
fn is_in_subset(sim: &Similarity<N2, D, R2>) -> bool
[src]
unsafe fn from_superset_unchecked(
sim: &Similarity<N2, D, R2>
) -> Similarity<N1, D, R1>
[src]
sim: &Similarity<N2, D, R2>
) -> Similarity<N1, D, R1>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R1, R2> SubsetOf<Similarity<N2, D, R2>> for Isometry<N1, D, R1> where
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N2, D, U1>,
[src]
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R1: Rotation<Point<N1, D>> + SubsetOf<R2>,
R2: Rotation<Point<N2, D>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(&self) -> Similarity<N2, D, R2>
[src]
fn is_in_subset(sim: &Similarity<N2, D, R2>) -> bool
[src]
unsafe fn from_superset_unchecked(
sim: &Similarity<N2, D, R2>
) -> Isometry<N1, D, R1>
[src]
sim: &Similarity<N2, D, R2>
) -> Isometry<N1, D, R1>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, R> SubsetOf<Similarity<N2, U3, R>> for Unit<Quaternion<N1>> where
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, U3>> + SupersetOf<Unit<Quaternion<N1>>>,
[src]
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N2, U3>> + SupersetOf<Unit<Quaternion<N1>>>,
fn to_superset(&self) -> Similarity<N2, U3, R>
[src]
fn is_in_subset(sim: &Similarity<N2, U3, R>) -> bool
[src]
unsafe fn from_superset_unchecked(
sim: &Similarity<N2, U3, R>
) -> Unit<Quaternion<N1>>
[src]
sim: &Similarity<N2, U3, R>
) -> Unit<Quaternion<N1>>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Similarity<N1, D, R> where
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<Matrix<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> + 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>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
[src]
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: Rotation<Point<N1, D>> + SubsetOf<Matrix<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>> + 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>>,
DefaultAllocator: Allocator<N1, D, U1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(&self) -> Transform<N2, D, C>
[src]
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
[src]
unsafe fn from_superset_unchecked(
t: &Transform<N2, D, C>
) -> Similarity<N1, D, R>
[src]
t: &Transform<N2, D, C>
) -> Similarity<N1, D, R>
fn from_superset(element: &T) -> Option<Self>
[src]
The inverse inclusion map: attempts to construct self
from the equivalent element of its superset. Read more
impl<N, D, R> One for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn one() -> Similarity<N, D, R>
[src]
Creates a new identity similarity.
fn set_one(&mut self)
[src]
Sets self
to the multiplicative identity element of Self
, 1
.
fn is_one(&self) -> bool where
Self: PartialEq<Self>,
[src]
Self: PartialEq<Self>,
Returns true
if self
is equal to the multiplicative identity. Read more
impl<N, D, R> AffineTransformation<Point<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type NonUniformScaling = N
Type of the non-uniform scaling to be applied.
type Rotation = R
Type of the first rotation to be applied.
type Translation = Translation<N, D>
The type of the pure translation part of this affine transformation.
fn decompose(&self) -> (Translation<N, D>, R, N, R)
[src]
fn append_translation(
&self,
t: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Similarity<N, D, R>
[src]
&self,
t: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Similarity<N, D, R>
fn prepend_translation(
&self,
t: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Similarity<N, D, R>
[src]
&self,
t: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Similarity<N, D, R>
fn append_rotation(
&self,
r: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Similarity<N, D, R>
[src]
&self,
r: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Similarity<N, D, R>
fn prepend_rotation(
&self,
r: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Similarity<N, D, R>
[src]
&self,
r: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Similarity<N, D, R>
fn append_scaling(
&self,
s: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Similarity<N, D, R>
[src]
&self,
s: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Similarity<N, D, R>
fn prepend_scaling(
&self,
s: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Similarity<N, D, R>
[src]
&self,
s: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Similarity<N, D, R>
fn append_rotation_wrt_point(
&self,
r: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation,
p: &Point<N, D>
) -> Option<Similarity<N, D, R>>
[src]
&self,
r: &<Similarity<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation,
p: &Point<N, D>
) -> Option<Similarity<N, D, R>>
impl<N, D, R> AbstractQuasigroup<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq<Self>,
[src]
Self: RelativeEq<Self>,
Returns true
if latin squareness holds for the given arguments. Approximate equality is used for verifications. Read more
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq,
[src]
Self: Eq,
Returns true
if latin squareness holds for the given arguments. Read more
impl<N, D, R> Eq for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + Eq,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + Eq,
DefaultAllocator: Allocator<N, D, U1>,
impl<N, D> Mul<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, N, D, R> Mul<R> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: R) -> <&'a Similarity<N, D, R> as Mul<R>>::Output
[src]
impl<'a, N, D, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <&'a Similarity<N, D, R> as Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
[src]
self,
right: Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <&'a Similarity<N, D, R> as Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<'b, N, D, R> Mul<&'b Point<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Point<N, D>
) -> <Similarity<N, D, R> as Mul<&'b Point<N, D>>>::Output
[src]
self,
right: &'b Point<N, D>
) -> <Similarity<N, D, R> as Mul<&'b Point<N, D>>>::Output
impl<'b, N> Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, N, D, C, R> Mul<Similarity<N, D, R>> for &'a Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<Similarity<N, D, R>>>::Output
impl<N, D, R> Mul<Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Isometry<N, D, R>
) -> <Similarity<N, D, R> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <Similarity<N, D, R> as Mul<Isometry<N, D, R>>>::Output
impl<'a, 'b, N, D, C, R> Mul<&'b Similarity<N, D, R>> for &'a Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'b, N, D, R> Mul<&'b Similarity<N, D, R>> for Translation<N, D> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, D, R>
) -> <Translation<N, D> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
right: &'b Similarity<N, D, R>
) -> <Translation<N, D> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, N, D, R> Mul<Isometry<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<Isometry<N, D, R>>>::Output
impl<'b, N> Mul<&'b Similarity<N, U2, Unit<Complex<N>>>> for Unit<Complex<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Similarity<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<&'b Similarity<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: &'b Similarity<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<&'b Similarity<N, U2, Unit<Complex<N>>>>>::Output
impl<N> Mul<Similarity<N, U3, Unit<Quaternion<N>>>> for Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'b, N, D, R> Mul<&'b Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Isometry<N, D, R>
) -> <Similarity<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <Similarity<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
impl<'a, N, D, R> Mul<Point<N, D>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Point<N, D>
) -> <&'a Similarity<N, D, R> as Mul<Point<N, D>>>::Output
[src]
self,
right: Point<N, D>
) -> <&'a Similarity<N, D, R> as Mul<Point<N, D>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Similarity<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D> Mul<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<N, D, R> Mul<Similarity<N, D, R>> for Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, D, R>
) -> <Isometry<N, D, R> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <Isometry<N, D, R> as Mul<Similarity<N, D, R>>>::Output
impl<'a, N> Mul<Similarity<N, U2, Unit<Complex<N>>>> for &'a Unit<Complex<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Similarity<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<Similarity<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: Similarity<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<Similarity<N, U2, Unit<Complex<N>>>>>::Output
impl<'b, N, D, R> Mul<&'b Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, D, R>
) -> <Similarity<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <Similarity<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Similarity<N, D, R>> for &'a Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, 'b, N> Mul<&'b Similarity<N, U2, Unit<Complex<N>>>> for &'a Unit<Complex<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Similarity<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<&'b Similarity<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: &'b Similarity<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<&'b Similarity<N, U2, Unit<Complex<N>>>>>::Output
impl<'a, N> Mul<Similarity<N, U3, Unit<Quaternion<N>>>> for &'a Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'b, N, D, R> Mul<&'b Translation<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Translation<N, D>
) -> <Similarity<N, D, R> as Mul<&'b Translation<N, D>>>::Output
[src]
self,
right: &'b Translation<N, D>
) -> <Similarity<N, D, R> as Mul<&'b Translation<N, D>>>::Output
impl<N, D, C, R> Mul<Transform<N, D, C>> for Similarity<N, D, R> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Transform<N, D, C>
) -> <Similarity<N, D, R> as Mul<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <Similarity<N, D, R> as Mul<Transform<N, D, C>>>::Output
impl<'a, N, D, C, R> Mul<Transform<N, D, C>> for &'a Similarity<N, D, R> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Transform<N, D, C>
) -> <&'a Similarity<N, D, R> as Mul<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <&'a Similarity<N, D, R> as Mul<Transform<N, D, C>>>::Output
impl<N, D, R> Mul<Point<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Point<N, D>
) -> <Similarity<N, D, R> as Mul<Point<N, D>>>::Output
[src]
self,
right: Point<N, D>
) -> <Similarity<N, D, R> as Mul<Point<N, D>>>::Output
impl<'a, N, D, R> Mul<Similarity<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<Similarity<N, D, R>>>::Output
impl<N, D, R> Mul<Translation<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Translation<N, D>
) -> <Similarity<N, D, R> as Mul<Translation<N, D>>>::Output
[src]
self,
right: Translation<N, D>
) -> <Similarity<N, D, R> as Mul<Translation<N, D>>>::Output
impl<'a, N, D, R> Mul<Translation<N, D>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Translation<N, D>
) -> <&'a Similarity<N, D, R> as Mul<Translation<N, D>>>::Output
[src]
self,
right: Translation<N, D>
) -> <&'a Similarity<N, D, R> as Mul<Translation<N, D>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Translation<N, D>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Translation<N, D>
) -> <&'a Similarity<N, D, R> as Mul<&'b Translation<N, D>>>::Output
[src]
self,
right: &'b Translation<N, D>
) -> <&'a Similarity<N, D, R> as Mul<&'b Translation<N, D>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Isometry<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
impl<'a, 'b, N, D, C, R> Mul<&'b Transform<N, D, C>> for &'a Similarity<N, D, R> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Transform<N, D, C>
) -> <&'a Similarity<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <&'a Similarity<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
impl<'b, N, D, R> Mul<&'b Similarity<N, D, R>> for Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, D, R>
) -> <Isometry<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <Isometry<N, D, R> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, 'b, N> Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for &'a Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <&'a Similarity<N, D, R> as Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
[src]
self,
right: &'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <&'a Similarity<N, D, R> as Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<'a, N, D> Mul<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
impl<N, D, C, R> Mul<Similarity<N, D, R>> for Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, D, R>
) -> <Transform<N, D, C> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <Transform<N, D, C> as Mul<Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Similarity<N, D, R>> for &'a Translation<N, D> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, D, R>
) -> <&'a Translation<N, D> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
right: &'b Similarity<N, D, R>
) -> <&'a Translation<N, D> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Point<N, D>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Point<N, D>
) -> <&'a Similarity<N, D, R> as Mul<&'b Point<N, D>>>::Output
[src]
self,
right: &'b Point<N, D>
) -> <&'a Similarity<N, D, R> as Mul<&'b Point<N, D>>>::Output
impl<N> Mul<Similarity<N, U2, Unit<Complex<N>>>> for Unit<Complex<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U2, U1>,
type Output = Similarity<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<Similarity<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: Similarity<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<Similarity<N, U2, Unit<Complex<N>>>>>::Output
impl<'b, N, D> Mul<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, N, D, R> Mul<Similarity<N, D, R>> for &'a Translation<N, D> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, D, R>
) -> <&'a Translation<N, D> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
right: Similarity<N, D, R>
) -> <&'a Translation<N, D> as Mul<Similarity<N, D, R>>>::Output
impl<N, D, R> Mul<R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: R) -> <Similarity<N, D, R> as Mul<R>>::Output
[src]
impl<'b, N, D, C, R> Mul<&'b Similarity<N, D, R>> for Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, U1>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Similarity<N, D, R>
) -> <Transform<N, D, C> as Mul<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <Transform<N, D, C> as Mul<&'b Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b R> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: &'b R) -> <&'a Similarity<N, D, R> as Mul<&'b R>>::Output
[src]
impl<'b, N, D, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <Similarity<N, D, R> as Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
[src]
self,
right: &'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <Similarity<N, D, R> as Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<N, D, R> Mul<Similarity<N, D, R>> for Translation<N, D> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, D, R>
) -> <Translation<N, D> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
right: Similarity<N, D, R>
) -> <Translation<N, D> as Mul<Similarity<N, D, R>>>::Output
impl<'a, N, D, R> Mul<Similarity<N, D, R>> for &'a Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<Similarity<N, D, R>>>::Output
impl<'b, N, D, R> Mul<&'b R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: &'b R) -> <Similarity<N, D, R> as Mul<&'b R>>::Output
[src]
impl<'b, N, D, C, R> Mul<&'b Transform<N, D, C>> for Similarity<N, D, R> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, <D as DimNameAdd<U1>>::Output>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Transform<N, D, C>
) -> <Similarity<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <Similarity<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
impl<N, D, R> Mul<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Similarity<N, D, R>
) -> <Similarity<N, D, R> as Mul<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <Similarity<N, D, R> as Mul<Similarity<N, D, R>>>::Output
impl<N, D, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <Similarity<N, D, R> as Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
[src]
self,
right: Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> <Similarity<N, D, R> as Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<N, D, R> Hash for Similarity<N, D, R> where
D: DimName + Hash,
N: Hash + RealField,
R: Hash,
DefaultAllocator: Allocator<N, D, U1>,
<DefaultAllocator as Allocator<N, D, U1>>::Buffer: Hash,
[src]
D: DimName + Hash,
N: Hash + RealField,
R: Hash,
DefaultAllocator: Allocator<N, D, U1>,
<DefaultAllocator as Allocator<N, D, U1>>::Buffer: Hash,
fn hash<H>(&self, state: &mut H) where
H: Hasher,
[src]
H: Hasher,
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl<N, D, R> AbstractMonoid<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> bool where
Self: RelativeEq<Self>,
[src]
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
fn prop_operating_identity_element_is_noop(args: (Self,)) -> bool where
Self: Eq,
[src]
Self: Eq,
Checks whether operating with the identity element is a no-op for the given argument. Read more
impl<'a, N, D, R> Div<Similarity<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<Similarity<N, D, R>>>::Output
impl<'a, N, D, R> Div<R> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: R) -> <&'a Similarity<N, D, R> as Div<R>>::Output
[src]
impl<'a, 'b, N, D, R> Div<&'b Similarity<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
impl<N, D, R> Div<Similarity<N, D, R>> for Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Similarity<N, D, R>
) -> <Isometry<N, D, R> as Div<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <Isometry<N, D, R> as Div<Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Div<&'b R> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: &'b R) -> <&'a Similarity<N, D, R> as Div<&'b R>>::Output
[src]
impl<'a, N> Div<Similarity<N, U3, Unit<Quaternion<N>>>> for &'a Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<N, D, R> Div<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Similarity<N, D, R>
) -> <Similarity<N, D, R> as Div<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <Similarity<N, D, R> as Div<Similarity<N, D, R>>>::Output
impl<'a, 'b, N, D> Div<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, 'b, N, D, R> Div<&'b Isometry<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Div<&'b Similarity<N, D, R>> for &'a Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
impl<'b, N, D, R> Div<&'b Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Isometry<N, D, R>
) -> <Similarity<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <Similarity<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
impl<'b, N, D, R> Div<&'b Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Similarity<N, D, R>
) -> <Similarity<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <Similarity<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
impl<N> Div<Similarity<N, U3, Unit<Quaternion<N>>>> for Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, N, D> Div<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
impl<N, D, R> Div<R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: R) -> <Similarity<N, D, R> as Div<R>>::Output
[src]
impl<'a, N, D, R> Div<Isometry<N, D, R>> for &'a Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <&'a Similarity<N, D, R> as Div<Isometry<N, D, R>>>::Output
impl<'b, N, D, R> Div<&'b Similarity<N, D, R>> for Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Similarity<N, D, R>
) -> <Isometry<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
[src]
self,
rhs: &'b Similarity<N, D, R>
) -> <Isometry<N, D, R> as Div<&'b Similarity<N, D, R>>>::Output
impl<N, D, R> Div<Isometry<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Isometry<N, D, R>
) -> <Similarity<N, D, R> as Div<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <Similarity<N, D, R> as Div<Isometry<N, D, R>>>::Output
impl<'b, N, D, R> Div<&'b R> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: &'b R) -> <Similarity<N, D, R> as Div<&'b R>>::Output
[src]
impl<'b, N, D> Div<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'b, N> Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, 'b, N> Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>> for &'a Unit<Quaternion<N>> where
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
[src]
N: RealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U1>,
type Output = Similarity<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Similarity<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<&'b Similarity<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, N, D, R> Div<Similarity<N, D, R>> for &'a Isometry<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<Similarity<N, D, R>>>::Output
[src]
self,
rhs: Similarity<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<Similarity<N, D, R>>>::Output
impl<N, D> Div<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
impl<N, D, R> UlpsEq<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + UlpsEq<R, Epsilon = <N as AbsDiffEq<N>>::Epsilon>,
DefaultAllocator: Allocator<N, D, U1>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + UlpsEq<R, Epsilon = <N as AbsDiffEq<N>>::Epsilon>,
DefaultAllocator: Allocator<N, D, U1>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
fn default_max_ulps() -> u32
[src]
fn ulps_eq(
&self,
other: &Similarity<N, D, R>,
epsilon: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon,
max_ulps: u32
) -> bool
[src]
&self,
other: &Similarity<N, D, R>,
epsilon: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon,
max_ulps: u32
) -> bool
fn ulps_ne(&self, other: &Rhs, epsilon: Self::Epsilon, max_ulps: u32) -> bool
The inverse of ApproxEq::ulps_eq
.
impl<N, D, R> Copy for Similarity<N, D, R> where
D: DimName + Copy,
N: RealField,
R: Copy + Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
<DefaultAllocator as Allocator<N, D, U1>>::Buffer: Copy,
[src]
D: DimName + Copy,
N: RealField,
R: Copy + Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
<DefaultAllocator as Allocator<N, D, U1>>::Buffer: Copy,
impl<N, D, R> ProjectiveTransformation<Point<N, D>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
fn inverse_transform_vector(
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
[src]
&self,
v: &Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
impl<N, D, R> AbsDiffEq<Similarity<N, D, R>> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + AbsDiffEq<R, Epsilon = <N as AbsDiffEq<N>>::Epsilon>,
DefaultAllocator: Allocator<N, D, U1>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>> + AbsDiffEq<R, Epsilon = <N as AbsDiffEq<N>>::Epsilon>,
DefaultAllocator: Allocator<N, D, U1>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
type Epsilon = <N as AbsDiffEq<N>>::Epsilon
Used for specifying relative comparisons.
fn default_epsilon(
) -> <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
[src]
) -> <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
fn abs_diff_eq(
&self,
other: &Similarity<N, D, R>,
epsilon: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
) -> bool
[src]
&self,
other: &Similarity<N, D, R>,
epsilon: <Similarity<N, D, R> as AbsDiffEq<Similarity<N, D, R>>>::Epsilon
) -> bool
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
The inverse of ApproxEq::abs_diff_eq
.
impl<N, D, R> Debug for Similarity<N, D, R> where
D: DimName + Debug,
N: Debug + RealField,
R: Debug,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName + Debug,
N: Debug + RealField,
R: Debug,
DefaultAllocator: Allocator<N, D, U1>,
impl<N, D, R> From<Similarity<N, D, R>> for Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer> where
D: DimName + DimNameAdd<U1>,
N: RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
[src]
D: DimName + DimNameAdd<U1>,
N: RealField,
R: SubsetOf<Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
fn from(
sim: Similarity<N, D, R>
) -> Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>
[src]
sim: Similarity<N, D, R>
) -> Matrix<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output, <DefaultAllocator as Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>>::Buffer>
impl<N, D, R> Identity<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
impl<N, D, R> AbstractLoop<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
impl<N, D, R> AbstractMagma<Multiplicative> for Similarity<N, D, R> where
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: RealField,
R: Rotation<Point<N, D>>,
DefaultAllocator: Allocator<N, D, U1>,
fn operate(&self, rhs: &Similarity<N, D, R>) -> Similarity<N, D, R>
[src]
fn op(&self, O, lhs: &Self) -> Self
[src]
Performs specific operation.
Auto Trait Implementations
impl<N, D, R> !Send for Similarity<N, D, R>
impl<N, D, R> !Sync for Similarity<N, D, R>
Blanket Implementations
impl<V> IntoVec<V> for V
[src]
impl<V> IntoPnt<V> for V
[src]
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T, Right> ClosedMul<Right> for T where
T: Mul<Right, Output = T> + MulAssign<Right>,
[src]
T: Mul<Right, Output = T> + MulAssign<Right>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, Right> ClosedDiv<Right> for T where
T: Div<Right, Output = T> + DivAssign<Right>,
[src]
T: Div<Right, Output = T> + DivAssign<Right>,
impl<R, E> Transformation<E> for R where
E: EuclideanSpace<RealField = R>,
R: RealField,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
[src]
E: EuclideanSpace<RealField = R>,
R: RealField,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
fn transform_point(&self, pt: &E) -> E
[src]
fn transform_vector(
&self,
v: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
v: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
[src]
fn is_in_subset(&self) -> bool
[src]
unsafe fn to_subset_unchecked(&self) -> SS
[src]
fn from_subset(element: &SS) -> SP
[src]
impl<R, E> Similarity<E> for R where
E: EuclideanSpace<RealField = R>,
R: RealField + SubsetOf<R>,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
[src]
E: EuclideanSpace<RealField = R>,
R: RealField + SubsetOf<R>,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
type Scaling = R
The type of the pure (uniform) scaling part of this similarity transformation.
fn translation(&self) -> <R as AffineTransformation<E>>::Translation
[src]
fn rotation(&self) -> <R as AffineTransformation<E>>::Rotation
[src]
fn scaling(&self) -> <R as Similarity<E>>::Scaling
[src]
fn translate_point(&self, pt: &E) -> E
[src]
Applies this transformation's pure translational part to a point.
fn rotate_point(&self, pt: &E) -> E
[src]
Applies this transformation's pure rotational part to a point.
fn scale_point(&self, pt: &E) -> E
[src]
Applies this transformation's pure scaling part to a point.
fn rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation's pure rotational part to a vector.
fn scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation's pure scaling part to a vector.
fn inverse_translate_point(&self, pt: &E) -> E
[src]
Applies this transformation inverse's pure translational part to a point.
fn inverse_rotate_point(&self, pt: &E) -> E
[src]
Applies this transformation inverse's pure rotational part to a point.
fn inverse_scale_point(&self, pt: &E) -> E
[src]
Applies this transformation inverse's pure scaling part to a point.
fn inverse_rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation inverse's pure rotational part to a vector.
fn inverse_scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
Applies this transformation inverse's pure scaling part to a vector.
impl<R, E> ProjectiveTransformation<E> for R where
E: EuclideanSpace<RealField = R>,
R: RealField,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
[src]
E: EuclideanSpace<RealField = R>,
R: RealField,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
fn inverse_transform_point(&self, pt: &E) -> E
[src]
fn inverse_transform_vector(
&self,
v: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
v: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
impl<R, E> AffineTransformation<E> for R where
E: EuclideanSpace<RealField = R>,
R: RealField,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
[src]
E: EuclideanSpace<RealField = R>,
R: RealField,
<E as EuclideanSpace>::Coordinates: ClosedMul<R>,
<E as EuclideanSpace>::Coordinates: ClosedDiv<R>,
<E as EuclideanSpace>::Coordinates: ClosedNeg,
type Rotation = Id<Multiplicative>
Type of the first rotation to be applied.
type NonUniformScaling = R
Type of the non-uniform scaling to be applied.
type Translation = Id<Multiplicative>
The type of the pure translation part of this affine transformation.
fn decompose(
&self
) -> (Id<Multiplicative>, Id<Multiplicative>, R, Id<Multiplicative>)
[src]
&self
) -> (Id<Multiplicative>, Id<Multiplicative>, R, Id<Multiplicative>)
fn append_translation(&self, &<R as AffineTransformation<E>>::Translation) -> R
[src]
fn prepend_translation(&self, &<R as AffineTransformation<E>>::Translation) -> R
[src]
fn append_rotation(&self, &<R as AffineTransformation<E>>::Rotation) -> R
[src]
fn prepend_rotation(&self, &<R as AffineTransformation<E>>::Rotation) -> R
[src]
fn append_scaling(
&self,
s: &<R as AffineTransformation<E>>::NonUniformScaling
) -> R
[src]
&self,
s: &<R as AffineTransformation<E>>::NonUniformScaling
) -> R
fn prepend_scaling(
&self,
s: &<R as AffineTransformation<E>>::NonUniformScaling
) -> R
[src]
&self,
s: &<R as AffineTransformation<E>>::NonUniformScaling
) -> R
fn append_rotation_wrt_point(&self, r: &Self::Rotation, p: &E) -> Option<Self>
[src]
Appends to this similarity a rotation centered at the point p
, i.e., this point is left invariant. Read more
impl<T> MultiplicativeGroup for T where
T: AbstractGroup<Multiplicative> + MultiplicativeLoop + MultiplicativeMonoid,
[src]
T: AbstractGroup<Multiplicative> + MultiplicativeLoop + MultiplicativeMonoid,
impl<T> MultiplicativeMonoid for T where
T: AbstractMonoid<Multiplicative> + MultiplicativeSemigroup + One,
[src]
T: AbstractMonoid<Multiplicative> + MultiplicativeSemigroup + One,
impl<T> MultiplicativeMagma for T where
T: AbstractMagma<Multiplicative>,
[src]
T: AbstractMagma<Multiplicative>,
impl<T> MultiplicativeQuasigroup for T where
T: AbstractQuasigroup<Multiplicative> + ClosedDiv<T> + MultiplicativeMagma,
[src]
T: AbstractQuasigroup<Multiplicative> + ClosedDiv<T> + MultiplicativeMagma,
impl<T> MultiplicativeLoop for T where
T: AbstractLoop<Multiplicative> + MultiplicativeQuasigroup + One,
[src]
T: AbstractLoop<Multiplicative> + MultiplicativeQuasigroup + One,
impl<T> MultiplicativeSemigroup for T where
T: AbstractSemigroup<Multiplicative> + ClosedMul<T> + MultiplicativeMagma,
[src]
T: AbstractSemigroup<Multiplicative> + ClosedMul<T> + MultiplicativeMagma,