[−][src]Struct na::geometry::Isometry
A direct isometry, i.e., a rotation followed by a translation, aka. a rigid-body motion, aka. an element of a Special Euclidean (SE) group.
Fields
rotation: R
The pure rotational part of this isometry.
translation: Translation<N, D>
The pure translational part of this isometry.
Implementations
impl<N, D, R> 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>,
pub fn from_parts(
translation: Translation<N, D>,
rotation: R
) -> Isometry<N, D, R>
[src]
translation: Translation<N, D>,
rotation: R
) -> Isometry<N, D, R>
Creates a new isometry from its rotational and translational parts.
Example
let tra = Translation3::new(0.0, 0.0, 3.0); let rot = UnitQuaternion::from_scaled_axis(Vector3::y() * f32::consts::PI); let iso = Isometry3::from_parts(tra, rot); assert_relative_eq!(iso * Point3::new(1.0, 2.0, 3.0), Point3::new(-1.0, 2.0, 0.0), epsilon = 1.0e-6);
#[must_use = "Did you mean to use inverse_mut()?"]pub fn inverse(&self) -> Isometry<N, D, R>
[src]
Inverts self
.
Example
let iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); let inv = iso.inverse(); let pt = Point2::new(1.0, 2.0); assert_eq!(inv * (iso * pt), pt);
pub fn inverse_mut(&mut self)
[src]
Inverts self
in-place.
Example
let mut iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); let pt = Point2::new(1.0, 2.0); let transformed_pt = iso * pt; iso.inverse_mut(); assert_eq!(iso * transformed_pt, pt);
pub fn append_translation_mut(&mut self, t: &Translation<N, D>)
[src]
Appends to self
the given translation in-place.
Example
let mut iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); let tra = Translation2::new(3.0, 4.0); // Same as `iso = tra * iso`. iso.append_translation_mut(&tra); assert_eq!(iso.translation, Translation2::new(4.0, 6.0));
pub fn append_rotation_mut(&mut self, r: &R)
[src]
Appends to self
the given rotation in-place.
Example
let mut iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::PI / 6.0); let rot = UnitComplex::new(f32::consts::PI / 2.0); // Same as `iso = rot * iso`. iso.append_rotation_mut(&rot); assert_relative_eq!(iso, Isometry2::new(Vector2::new(-2.0, 1.0), f32::consts::PI * 2.0 / 3.0), epsilon = 1.0e-6);
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.
Example
let mut iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); let rot = UnitComplex::new(f32::consts::FRAC_PI_2); let pt = Point2::new(1.0, 0.0); iso.append_rotation_wrt_point_mut(&rot, &pt); assert_relative_eq!(iso * pt, Point2::new(-2.0, 0.0), epsilon = 1.0e-6);
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
.
Example
let mut iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); let rot = UnitComplex::new(f32::consts::FRAC_PI_2); iso.append_rotation_wrt_center_mut(&rot); // The translation part should not have changed. assert_eq!(iso.translation.vector, Vector2::new(1.0, 2.0)); assert_eq!(iso.rotation, UnitComplex::new(f32::consts::PI));
pub fn transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
Transform the given point by this isometry.
This is the same as the multiplication self * pt
.
Example
let tra = Translation3::new(0.0, 0.0, 3.0); let rot = UnitQuaternion::from_scaled_axis(Vector3::y() * f32::consts::FRAC_PI_2); let iso = Isometry3::from_parts(tra, rot); let transformed_point = iso.transform_point(&Point3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_point, Point3::new(3.0, 2.0, 2.0), epsilon = 1.0e-6);
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 isometry, ignoring the translation component of the isometry.
This is the same as the multiplication self * v
.
Example
let tra = Translation3::new(0.0, 0.0, 3.0); let rot = UnitQuaternion::from_scaled_axis(Vector3::y() * f32::consts::FRAC_PI_2); let iso = Isometry3::from_parts(tra, rot); let transformed_point = iso.transform_vector(&Vector3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_point, Vector3::new(3.0, 2.0, -1.0), epsilon = 1.0e-6);
pub fn inverse_transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
Transform the given point by the inverse of this isometry. This may be less expensive than computing the entire isometry inverse and then transforming the point.
Example
let tra = Translation3::new(0.0, 0.0, 3.0); let rot = UnitQuaternion::from_scaled_axis(Vector3::y() * f32::consts::FRAC_PI_2); let iso = Isometry3::from_parts(tra, rot); let transformed_point = iso.inverse_transform_point(&Point3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_point, Point3::new(0.0, 2.0, 1.0), epsilon = 1.0e-6);
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 isometry, ignoring the translation component of the isometry. This may be less expensive than computing the entire isometry inverse and then transforming the point.
Example
let tra = Translation3::new(0.0, 0.0, 3.0); let rot = UnitQuaternion::from_scaled_axis(Vector3::y() * f32::consts::FRAC_PI_2); let iso = Isometry3::from_parts(tra, rot); let transformed_point = iso.inverse_transform_vector(&Vector3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_point, Vector3::new(-3.0, 2.0, 1.0), epsilon = 1.0e-6);
impl<N, D, R> Isometry<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 isometry into its equivalent homogeneous transformation matrix.
Example
let iso = Isometry2::new(Vector2::new(10.0, 20.0), f32::consts::FRAC_PI_6); let expected = Matrix3::new(0.8660254, -0.5, 10.0, 0.5, 0.8660254, 20.0, 0.0, 0.0, 1.0); assert_relative_eq!(iso.to_homogeneous(), expected, epsilon = 1.0e-6);
impl<N, D, R> 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>,
pub fn identity() -> Isometry<N, D, R>
[src]
Creates a new identity isometry.
Example
let iso = Isometry2::identity(); let pt = Point2::new(1.0, 2.0); assert_eq!(iso * pt, pt); let iso = Isometry3::identity(); let pt = Point3::new(1.0, 2.0, 3.0); assert_eq!(iso * pt, pt);
pub fn rotation_wrt_point(r: R, p: Point<N, D>) -> Isometry<N, D, R>
[src]
The isometry that applies the rotation r
with its axis passing through the point p
.
This effectively lets p
invariant.
Example
let rot = UnitComplex::new(f32::consts::PI); let pt = Point2::new(1.0, 0.0); let iso = Isometry2::rotation_wrt_point(rot, pt); assert_eq!(iso * pt, pt); // The rotation center is not affected. assert_relative_eq!(iso * Point2::new(1.0, 2.0), Point2::new(1.0, -2.0), epsilon = 1.0e-6);
impl<N> Isometry<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
) -> Isometry<N, U2, Rotation<N, U2>>
[src]
translation: Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>,
angle: N
) -> Isometry<N, U2, Rotation<N, U2>>
Creates a new 2D isometry from a translation and a rotation angle.
Its rotational part is represented as a 2x2 rotation matrix.
Example
let iso = Isometry2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); assert_eq!(iso * Point2::new(3.0, 4.0), Point2::new(-3.0, 5.0));
pub fn translation(x: N, y: N) -> Isometry<N, U2, Rotation<N, U2>>
[src]
Creates a new isometry from the given translation coordinates.
pub fn rotation(angle: N) -> Isometry<N, U2, Rotation<N, U2>>
[src]
Creates a new isometry from the given rotation angle.
impl<N> Isometry<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
) -> Isometry<N, U2, Unit<Complex<N>>>
[src]
translation: Matrix<N, U2, U1, <DefaultAllocator as Allocator<N, U2, U1>>::Buffer>,
angle: N
) -> Isometry<N, U2, Unit<Complex<N>>>
Creates a new 2D isometry from a translation and a rotation angle.
Its rotational part is represented as an unit complex number.
Example
let iso = IsometryMatrix2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2); assert_eq!(iso * Point2::new(3.0, 4.0), Point2::new(-3.0, 5.0));
pub fn translation(x: N, y: N) -> Isometry<N, U2, Unit<Complex<N>>>
[src]
Creates a new isometry from the given translation coordinates.
pub fn rotation(angle: N) -> Isometry<N, U2, Unit<Complex<N>>>
[src]
Creates a new isometry from the given rotation angle.
impl<N> Isometry<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>
) -> Isometry<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>
) -> Isometry<N, U3, Rotation<N, U3>>
Creates a new isometry from a translation and a rotation axis-angle.
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); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::new(translation, axisangle); assert_relative_eq!(iso * pt, Point3::new(7.0, 7.0, -1.0), epsilon = 1.0e-6); assert_relative_eq!(iso * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); // Isometry with its rotation part represented as a Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::new(translation, axisangle); assert_relative_eq!(iso * pt, Point3::new(7.0, 7.0, -1.0), epsilon = 1.0e-6); assert_relative_eq!(iso * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6);
pub fn translation(x: N, y: N, z: N) -> Isometry<N, U3, Rotation<N, U3>>
[src]
Creates a new isometry from the given translation coordinates.
pub fn rotation(
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<N, U3, Rotation<N, U3>>
[src]
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<N, U3, Rotation<N, U3>>
Creates a new isometry from the given rotation angle.
pub fn face_towards(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<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>
) -> Isometry<N, U3, Rotation<N, U3>>
Creates an isometry that corresponds to the local frame of an observer standing at the
point eye
and looking toward target
.
It maps the z
axis to the view direction target - eye
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(); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::face_towards(&eye, &target, &up); assert_eq!(iso * Point3::origin(), eye); assert_relative_eq!(iso * Vector3::z(), Vector3::x()); // Isometry with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::face_towards(&eye, &target, &up); assert_eq!(iso * Point3::origin(), eye); assert_relative_eq!(iso * Vector3::z(), Vector3::x());
pub fn new_observer_frame(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<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>
) -> Isometry<N, U3, Rotation<N, U3>>
renamed to face_towards
Deprecated: Use Isometry::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>
) -> Isometry<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>
) -> Isometry<N, U3, Rotation<N, U3>>
Builds a right-handed look-at view matrix.
It maps the view direction target - eye
to the negative z
axis to and the eye
to the origin.
This conforms to the common notion of right handed camera look-at view matrix from
the computer graphics community, i.e. the camera is assumed to look toward its local -z
axis.
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(); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::look_at_rh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), -Vector3::z()); // Isometry with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::look_at_rh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), -Vector3::z());
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>
) -> Isometry<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>
) -> Isometry<N, U3, Rotation<N, U3>>
Builds a left-handed look-at view matrix.
It maps the view direction target - eye
to the positive z
axis and the eye
to the origin.
This conforms to the common notion of right handed camera look-at view matrix from
the computer graphics community, i.e. the camera is assumed to look toward its local z
axis.
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(); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::look_at_lh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), Vector3::z()); // Isometry with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::look_at_lh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), Vector3::z());
impl<N> Isometry<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>
) -> Isometry<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>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
Creates a new isometry from a translation and a rotation axis-angle.
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); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::new(translation, axisangle); assert_relative_eq!(iso * pt, Point3::new(7.0, 7.0, -1.0), epsilon = 1.0e-6); assert_relative_eq!(iso * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); // Isometry with its rotation part represented as a Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::new(translation, axisangle); assert_relative_eq!(iso * pt, Point3::new(7.0, 7.0, -1.0), epsilon = 1.0e-6); assert_relative_eq!(iso * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6);
pub fn translation(x: N, y: N, z: N) -> Isometry<N, U3, Unit<Quaternion<N>>>
[src]
Creates a new isometry from the given translation coordinates.
pub fn rotation(
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
[src]
axisangle: Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
Creates a new isometry from the given rotation angle.
pub fn face_towards(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<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>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
Creates an isometry that corresponds to the local frame of an observer standing at the
point eye
and looking toward target
.
It maps the z
axis to the view direction target - eye
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(); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::face_towards(&eye, &target, &up); assert_eq!(iso * Point3::origin(), eye); assert_relative_eq!(iso * Vector3::z(), Vector3::x()); // Isometry with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::face_towards(&eye, &target, &up); assert_eq!(iso * Point3::origin(), eye); assert_relative_eq!(iso * Vector3::z(), Vector3::x());
pub fn new_observer_frame(
eye: &Point<N, U3>,
target: &Point<N, U3>,
up: &Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>
) -> Isometry<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>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
renamed to face_towards
Deprecated: Use Isometry::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>
) -> Isometry<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>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
Builds a right-handed look-at view matrix.
It maps the view direction target - eye
to the negative z
axis to and the eye
to the origin.
This conforms to the common notion of right handed camera look-at view matrix from
the computer graphics community, i.e. the camera is assumed to look toward its local -z
axis.
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(); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::look_at_rh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), -Vector3::z()); // Isometry with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::look_at_rh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), -Vector3::z());
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>
) -> Isometry<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>
) -> Isometry<N, U3, Unit<Quaternion<N>>>
Builds a left-handed look-at view matrix.
It maps the view direction target - eye
to the positive z
axis and the eye
to the origin.
This conforms to the common notion of right handed camera look-at view matrix from
the computer graphics community, i.e. the camera is assumed to look toward its local z
axis.
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(); // Isometry with its rotation part represented as a UnitQuaternion let iso = Isometry3::look_at_lh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), Vector3::z()); // Isometry with its rotation part represented as Rotation3 (a 3x3 rotation matrix). let iso = IsometryMatrix3::look_at_lh(&eye, &target, &up); assert_eq!(iso * eye, Point3::origin()); assert_relative_eq!(iso * Vector3::x(), Vector3::z());
Trait Implementations
impl<N, D, R> AbsDiffEq<Isometry<N, D, R>> for Isometry<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(
) -> <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
[src]
) -> <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
fn abs_diff_eq(
&self,
other: &Isometry<N, D, R>,
epsilon: <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
) -> bool
[src]
&self,
other: &Isometry<N, D, R>,
epsilon: <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
) -> bool
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
impl<N, D, R> AbstractGroup<Multiplicative> 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>,
impl<N, D, R> AbstractLoop<Multiplicative> 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>,
impl<N, D, R> AbstractMagma<Multiplicative> 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>,
fn operate(&self, rhs: &Isometry<N, D, R>) -> Isometry<N, D, R>
[src]
fn op(&self, O, lhs: &Self) -> Self
[src]
impl<N, D, R> AbstractMonoid<Multiplicative> 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>,
fn prop_operating_identity_element_is_noop_approx(args: (Self,)) -> bool where
Self: RelativeEq<Self>,
[src]
Self: RelativeEq<Self>,
fn prop_operating_identity_element_is_noop(args: (Self,)) -> bool where
Self: Eq,
[src]
Self: Eq,
impl<N, D, R> AbstractQuasigroup<Multiplicative> 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>,
fn prop_inv_is_latin_square_approx(args: (Self, Self)) -> bool where
Self: RelativeEq<Self>,
[src]
Self: RelativeEq<Self>,
fn prop_inv_is_latin_square(args: (Self, Self)) -> bool where
Self: Eq,
[src]
Self: Eq,
impl<N, D, R> AbstractSemigroup<Multiplicative> 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>,
fn prop_is_associative_approx(args: (Self, Self, Self)) -> bool where
Self: RelativeEq<Self>,
[src]
Self: RelativeEq<Self>,
fn prop_is_associative(args: (Self, Self, Self)) -> bool where
Self: Eq,
[src]
Self: Eq,
impl<N, D, R> AffineTransformation<Point<N, D>> 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 Rotation = R
Type of the first rotation to be applied.
type NonUniformScaling = Id<Multiplicative>
Type of the non-uniform scaling to be applied.
type Translation = Translation<N, D>
The type of the pure translation part of this affine transformation.
fn decompose(
&self
) -> (<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Translation, R, Id<Multiplicative>, R)
[src]
&self
) -> (<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Translation, R, Id<Multiplicative>, R)
fn append_translation(
&self,
t: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Isometry<N, D, R>
[src]
&self,
t: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Isometry<N, D, R>
fn prepend_translation(
&self,
t: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Isometry<N, D, R>
[src]
&self,
t: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Translation
) -> Isometry<N, D, R>
fn append_rotation(
&self,
r: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Isometry<N, D, R>
[src]
&self,
r: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Isometry<N, D, R>
fn prepend_rotation(
&self,
r: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Isometry<N, D, R>
[src]
&self,
r: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation
) -> Isometry<N, D, R>
fn append_scaling(
&self,
&<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Isometry<N, D, R>
[src]
&self,
&<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Isometry<N, D, R>
fn prepend_scaling(
&self,
&<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Isometry<N, D, R>
[src]
&self,
&<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::NonUniformScaling
) -> Isometry<N, D, R>
fn append_rotation_wrt_point(
&self,
r: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation,
p: &Point<N, D>
) -> Option<Isometry<N, D, R>>
[src]
&self,
r: &<Isometry<N, D, R> as AffineTransformation<Point<N, D>>>::Rotation,
p: &Point<N, D>
) -> Option<Isometry<N, D, R>>
impl<N, D, R> Clone for Isometry<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>,
impl<N, D, R> Copy for Isometry<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> Debug for Isometry<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> DirectIsometry<Point<N, D>> 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>,
impl<N, D, R> Display for Isometry<N, D, R> where
D: DimName,
N: Display + RealField,
R: Display,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<usize, D, U1>,
[src]
D: DimName,
N: Display + RealField,
R: Display,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<usize, D, U1>,
impl<'a, 'b, N, D, R> Div<&'b Isometry<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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
impl<'b, N, D, R> Div<&'b Isometry<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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Isometry<N, D, R>
) -> <Isometry<N, D, R> as Div<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <Isometry<N, D, R> as Div<&'b Isometry<N, D, R>>>::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<'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> Div<&'b Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<&'b Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<&'b Isometry<N, D, Rotation<N, D>>>>::Output
impl<'a, 'b, N, D> Div<&'b Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<&'b Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<&'b Isometry<N, D, Rotation<N, D>>>>::Output
impl<'b, N> Div<&'b Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, 'b, N> Div<&'b Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'b, N, D, R> Div<&'b 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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: &'b R) -> <Isometry<N, D, R> as Div<&'b R>>::Output
[src]
impl<'a, 'b, N, D, R> Div<&'b 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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: &'b R) -> <&'a Isometry<N, D, R> as Div<&'b R>>::Output
[src]
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 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 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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Isometry<N, D, R>
) -> <Isometry<N, D, R> as Div<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <Isometry<N, D, R> as Div<Isometry<N, D, R>>>::Output
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<'a, N, D, R> Div<Isometry<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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Div<Isometry<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<N, D> Div<Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<Isometry<N, D, Rotation<N, D>>>>::Output
impl<'a, N, D> Div<Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<Isometry<N, D, Rotation<N, D>>>>::Output
impl<N> Div<Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Div<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, N> Div<Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the /
operator.
fn div(
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Div<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, N, D, R> Div<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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: R) -> <&'a Isometry<N, D, R> as Div<R>>::Output
[src]
impl<N, D, R> Div<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 = Isometry<N, D, R>
The resulting type after applying the /
operator.
fn div(self, rhs: R) -> <Isometry<N, D, R> as Div<R>>::Output
[src]
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, 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<'b, N, D, R> DivAssign<&'b Isometry<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>,
fn div_assign(&mut self, rhs: &'b Isometry<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<'b, N, D, R> DivAssign<&'b 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>,
fn div_assign(&mut self, rhs: &'b R)
[src]
impl<N, D, R> DivAssign<Isometry<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>,
fn div_assign(&mut self, rhs: Isometry<N, D, 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<N, D, R> DivAssign<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>,
fn div_assign(&mut self, rhs: R)
[src]
impl<N, D, R> Eq for Isometry<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, R> From<Isometry<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 as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
[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 as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, U1>,
fn from(
iso: Isometry<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]
iso: Isometry<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> Hash for Isometry<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,
impl<N, D, R> Identity<Multiplicative> 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>,
impl<N, D, R> Isometry<Point<N, D>> 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>,
impl<'b, N, D, R> Mul<&'b Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Isometry<N, D, R>
) -> <Translation<N, D> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
right: &'b Isometry<N, D, R>
) -> <Translation<N, D> as Mul<&'b Isometry<N, D, R>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
impl<'a, 'b, N, D, C, R> Mul<&'b Isometry<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 Isometry<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<&'b Isometry<N, D, R>>>::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, R> Mul<&'b Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Isometry<N, D, R>
) -> <&'a Translation<N, D> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
right: &'b Isometry<N, D, R>
) -> <&'a Translation<N, D> as Mul<&'b Isometry<N, D, R>>>::Output
impl<'b, N, D, R> Mul<&'b Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Isometry<N, D, R>
) -> <Isometry<N, D, R> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <Isometry<N, D, R> as Mul<&'b Isometry<N, D, R>>>::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<'b, N, D, C, R> Mul<&'b Isometry<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 Isometry<N, D, R>
) -> <Transform<N, D, C> as Mul<&'b Isometry<N, D, R>>>::Output
[src]
self,
rhs: &'b Isometry<N, D, R>
) -> <Transform<N, D, C> as Mul<&'b Isometry<N, D, R>>>::Output
impl<'b, N, D> Mul<&'b Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<&'b Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<&'b Isometry<N, D, Rotation<N, D>>>>::Output
impl<'a, 'b, N, D> Mul<&'b Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<&'b Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<&'b Isometry<N, D, Rotation<N, D>>>>::Output
impl<'a, 'b, N> Mul<&'b Isometry<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 = Isometry<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Isometry<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<&'b Isometry<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: &'b Isometry<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<&'b Isometry<N, U2, Unit<Complex<N>>>>>::Output
impl<'b, N> Mul<&'b Isometry<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 = Isometry<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Isometry<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<&'b Isometry<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: &'b Isometry<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<&'b Isometry<N, U2, Unit<Complex<N>>>>>::Output
impl<'b, N> Mul<&'b Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'a, 'b, N> Mul<&'b Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: &'b Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<&'b Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<'b, N, D, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> 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 = 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>
) -> <Isometry<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>
) -> <Isometry<N, D, R> as Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> 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 = 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 Isometry<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 Isometry<N, D, R> as Mul<&'b Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<'b, N, D, R> Mul<&'b Point<N, D>> 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 = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Point<N, D>
) -> <Isometry<N, D, R> as Mul<&'b Point<N, D>>>::Output
[src]
self,
right: &'b Point<N, D>
) -> <Isometry<N, D, R> as Mul<&'b Point<N, D>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Point<N, D>> 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 = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Point<N, D>
) -> <&'a Isometry<N, D, R> as Mul<&'b Point<N, D>>>::Output
[src]
self,
right: &'b Point<N, D>
) -> <&'a Isometry<N, D, R> as Mul<&'b Point<N, D>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b 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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: &'b R) -> <&'a Isometry<N, D, R> as Mul<&'b R>>::Output
[src]
impl<'b, N, D, R> Mul<&'b 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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: &'b R) -> <Isometry<N, D, R> as Mul<&'b R>>::Output
[src]
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, 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<'b, N, D, C, R> Mul<&'b Transform<N, D, C>> for Isometry<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>
) -> <Isometry<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <Isometry<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
impl<'a, 'b, N, D, C, R> Mul<&'b Transform<N, D, C>> for &'a Isometry<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 Isometry<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <&'a Isometry<N, D, R> as Mul<&'b Transform<N, D, C>>>::Output
impl<'b, N, D, R> Mul<&'b Translation<N, D>> 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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Translation<N, D>
) -> <Isometry<N, D, R> as Mul<&'b Translation<N, D>>>::Output
[src]
self,
right: &'b Translation<N, D>
) -> <Isometry<N, D, R> as Mul<&'b Translation<N, D>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Translation<N, D>> 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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Translation<N, D>
) -> <&'a Isometry<N, D, R> as Mul<&'b Translation<N, D>>>::Output
[src]
self,
right: &'b Translation<N, D>
) -> <&'a Isometry<N, D, R> as Mul<&'b Translation<N, D>>>::Output
impl<'b, N, D, R> Mul<&'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>> 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 = Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <Isometry<N, D, R> as Mul<&'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
[src]
self,
right: &'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <Isometry<N, D, R> as Mul<&'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
impl<'a, 'b, N, D, R> Mul<&'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>> 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 = Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <&'a Isometry<N, D, R> as Mul<&'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
[src]
self,
right: &'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <&'a Isometry<N, D, R> as Mul<&'b Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
impl<'a, N, D, C, R> Mul<Isometry<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: Isometry<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <&'a Transform<N, D, C> as Mul<Isometry<N, D, R>>>::Output
impl<N, D, R> Mul<Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Isometry<N, D, R>
) -> <Isometry<N, D, R> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <Isometry<N, D, R> as Mul<Isometry<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<'a, N, D, R> Mul<Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <&'a Isometry<N, D, R> as Mul<Isometry<N, D, R>>>::Output
impl<N, D, C, R> Mul<Isometry<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: Isometry<N, D, R>
) -> <Transform<N, D, C> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
rhs: Isometry<N, D, R>
) -> <Transform<N, D, C> as Mul<Isometry<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, N, D, R> Mul<Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Isometry<N, D, R>
) -> <&'a Translation<N, D> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
right: Isometry<N, D, R>
) -> <&'a Translation<N, D> as Mul<Isometry<N, D, R>>>::Output
impl<N, D, R> Mul<Isometry<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Isometry<N, D, R>
) -> <Translation<N, D> as Mul<Isometry<N, D, R>>>::Output
[src]
self,
right: Isometry<N, D, R>
) -> <Translation<N, D> as Mul<Isometry<N, D, R>>>::Output
impl<N, D> Mul<Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<Isometry<N, D, Rotation<N, D>>>>::Output
impl<'a, N, D> Mul<Isometry<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 = Isometry<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<Isometry<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Isometry<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<Isometry<N, D, Rotation<N, D>>>>::Output
impl<'a, N> Mul<Isometry<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 = Isometry<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Isometry<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<Isometry<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: Isometry<N, U2, Unit<Complex<N>>>
) -> <&'a Unit<Complex<N>> as Mul<Isometry<N, U2, Unit<Complex<N>>>>>::Output
impl<N> Mul<Isometry<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 = Isometry<N, U2, Unit<Complex<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Isometry<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<Isometry<N, U2, Unit<Complex<N>>>>>::Output
[src]
self,
rhs: Isometry<N, U2, Unit<Complex<N>>>
) -> <Unit<Complex<N>> as Mul<Isometry<N, U2, Unit<Complex<N>>>>>::Output
impl<'a, N> Mul<Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <&'a Unit<Quaternion<N>> as Mul<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<N> Mul<Isometry<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 = Isometry<N, U3, Unit<Quaternion<N>>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
[src]
self,
right: Isometry<N, U3, Unit<Quaternion<N>>>
) -> <Unit<Quaternion<N>> as Mul<Isometry<N, U3, Unit<Quaternion<N>>>>>::Output
impl<N, D, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> 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 = 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>
) -> <Isometry<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>
) -> <Isometry<N, D, R> as Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<'a, N, D, R> Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>> 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 = 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 Isometry<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 Isometry<N, D, R> as Mul<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>::Output
impl<N, D, R> Mul<Point<N, D>> 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 = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Point<N, D>
) -> <Isometry<N, D, R> as Mul<Point<N, D>>>::Output
[src]
self,
right: Point<N, D>
) -> <Isometry<N, D, R> as Mul<Point<N, D>>>::Output
impl<'a, N, D, R> Mul<Point<N, D>> 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 = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Point<N, D>
) -> <&'a Isometry<N, D, R> as Mul<Point<N, D>>>::Output
[src]
self,
right: Point<N, D>
) -> <&'a Isometry<N, D, R> as Mul<Point<N, D>>>::Output
impl<'a, N, D, R> Mul<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: R) -> <&'a Isometry<N, D, R> as Mul<R>>::Output
[src]
impl<N, D, R> Mul<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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(self, rhs: R) -> <Isometry<N, D, R> as Mul<R>>::Output
[src]
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, 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<N, D, C, R> Mul<Transform<N, D, C>> for Isometry<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>
) -> <Isometry<N, D, R> as Mul<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <Isometry<N, D, R> as Mul<Transform<N, D, C>>>::Output
impl<'a, N, D, C, R> Mul<Transform<N, D, C>> for &'a Isometry<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 Isometry<N, D, R> as Mul<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <&'a Isometry<N, D, R> as Mul<Transform<N, D, C>>>::Output
impl<'a, N, D, R> Mul<Translation<N, D>> 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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Translation<N, D>
) -> <&'a Isometry<N, D, R> as Mul<Translation<N, D>>>::Output
[src]
self,
right: Translation<N, D>
) -> <&'a Isometry<N, D, R> as Mul<Translation<N, D>>>::Output
impl<N, D, R> Mul<Translation<N, D>> 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 = Isometry<N, D, R>
The resulting type after applying the *
operator.
fn mul(
self,
right: Translation<N, D>
) -> <Isometry<N, D, R> as Mul<Translation<N, D>>>::Output
[src]
self,
right: Translation<N, D>
) -> <Isometry<N, D, R> as Mul<Translation<N, D>>>::Output
impl<N, D, R> Mul<Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>> 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 = Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <Isometry<N, D, R> as Mul<Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
[src]
self,
right: Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <Isometry<N, D, R> as Mul<Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
impl<'a, N, D, R> Mul<Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>> 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 = Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <&'a Isometry<N, D, R> as Mul<Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
[src]
self,
right: Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>
) -> <&'a Isometry<N, D, R> as Mul<Unit<Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>>>>::Output
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<'b, N, D, R> MulAssign<&'b Isometry<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>,
fn mul_assign(&mut self, rhs: &'b Isometry<N, D, R>)
[src]
impl<'b, N, D, C, R> MulAssign<&'b Isometry<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 Isometry<N, D, R>)
[src]
impl<'b, N, D, R> MulAssign<&'b 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>,
fn mul_assign(&mut self, rhs: &'b R)
[src]
impl<'b, N, D, R> MulAssign<&'b Translation<N, D>> 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>,
fn mul_assign(&mut self, rhs: &'b Translation<N, D>)
[src]
impl<N, D, R> MulAssign<Isometry<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>,
fn mul_assign(&mut self, rhs: Isometry<N, D, R>)
[src]
impl<N, D, C, R> MulAssign<Isometry<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: Isometry<N, D, R>)
[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> MulAssign<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>,
fn mul_assign(&mut self, rhs: R)
[src]
impl<N, D, R> MulAssign<Translation<N, D>> 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>,
fn mul_assign(&mut self, rhs: Translation<N, D>)
[src]
impl<N, D, R> One 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>,
fn one() -> Isometry<N, D, R>
[src]
Creates a new identity isometry.
fn set_one(&mut self)
[src]
fn is_one(&self) -> bool where
Self: PartialEq<Self>,
[src]
Self: PartialEq<Self>,
impl<N, D, R> PartialEq<Isometry<N, D, R>> for Isometry<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: &Isometry<N, D, R>) -> bool
[src]
#[must_use]fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl<N, D, R> ProjectiveTransformation<Point<N, D>> 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>,
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> RelativeEq<Isometry<N, D, R>> for Isometry<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(
) -> <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
[src]
) -> <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
fn relative_eq(
&self,
other: &Isometry<N, D, R>,
epsilon: <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon,
max_relative: <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon
) -> bool
[src]
&self,
other: &Isometry<N, D, R>,
epsilon: <Isometry<N, D, R> as AbsDiffEq<Isometry<N, D, R>>>::Epsilon,
max_relative: <Isometry<N, D, R> as AbsDiffEq<Isometry<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
impl<N, D, R> Similarity<Point<N, D>> 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 Scaling = Id<Multiplicative>
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) -> Id<Multiplicative>
[src]
fn translate_point(&self, pt: &E) -> E
[src]
fn rotate_point(&self, pt: &E) -> E
[src]
fn scale_point(&self, pt: &E) -> E
[src]
fn rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn inverse_translate_point(&self, pt: &E) -> E
[src]
fn inverse_rotate_point(&self, pt: &E) -> E
[src]
fn inverse_scale_point(&self, pt: &E) -> E
[src]
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
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
impl<N1, N2, D, R> SubsetOf<Isometry<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) -> Isometry<N2, D, R>
[src]
fn is_in_subset(iso: &Isometry<N2, D, R>) -> bool
[src]
unsafe fn from_superset_unchecked(iso: &Isometry<N2, D, R>) -> Rotation<N1, D>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, D, R> SubsetOf<Isometry<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) -> Isometry<N2, D, R>
[src]
fn is_in_subset(iso: &Isometry<N2, D, R>) -> bool
[src]
unsafe fn from_superset_unchecked(
iso: &Isometry<N2, D, R>
) -> Translation<N1, D>
[src]
iso: &Isometry<N2, D, R>
) -> Translation<N1, D>
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, D, R1, R2> SubsetOf<Isometry<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) -> Isometry<N2, D, R2>
[src]
fn is_in_subset(iso: &Isometry<N2, D, R2>) -> bool
[src]
unsafe fn from_superset_unchecked(
iso: &Isometry<N2, D, R2>
) -> Isometry<N1, D, R1>
[src]
iso: &Isometry<N2, D, R2>
) -> Isometry<N1, D, R1>
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, R> SubsetOf<Isometry<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) -> Isometry<N2, U2, R>
[src]
fn is_in_subset(iso: &Isometry<N2, U2, R>) -> bool
[src]
unsafe fn from_superset_unchecked(
iso: &Isometry<N2, U2, R>
) -> Unit<Complex<N1>>
[src]
iso: &Isometry<N2, U2, R>
) -> Unit<Complex<N1>>
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, R> SubsetOf<Isometry<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) -> Isometry<N2, U3, R>
[src]
fn is_in_subset(iso: &Isometry<N2, U3, R>) -> bool
[src]
unsafe fn from_superset_unchecked(
iso: &Isometry<N2, U3, R>
) -> Unit<Quaternion<N1>>
[src]
iso: &Isometry<N2, U3, R>
) -> Unit<Quaternion<N1>>
fn from_superset(element: &T) -> Option<Self>
[src]
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 Isometry<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<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
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<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
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>
) -> Isometry<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>
) -> Isometry<N1, D, R>
fn from_superset(element: &T) -> Option<Self>
[src]
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]
impl<N1, N2, D, R, C> SubsetOf<Transform<N2, D, C>> for Isometry<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<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
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<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
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>) -> Isometry<N1, D, R>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N, D, R> Transformation<Point<N, D>> 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>,
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> TwoSidedInverse<Multiplicative> 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>,
#[must_use = "Did you mean to use two_sided_inverse_mut()?"]fn two_sided_inverse(&self) -> Isometry<N, D, R>
[src]
fn two_sided_inverse_mut(&mut self)
[src]
impl<N, D, R> UlpsEq<Isometry<N, D, R>> for Isometry<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,
Auto Trait Implementations
impl<N, D, R> !RefUnwindSafe for Isometry<N, D, R>
impl<N, D, R> !Send for Isometry<N, D, R>
impl<N, D, R> !Sync for Isometry<N, D, R>
impl<N, D, R> !Unpin for Isometry<N, D, R>
impl<N, D, R> !UnwindSafe for Isometry<N, D, R>
Blanket Implementations
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]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, Right> ClosedDiv<Right> for T where
T: Div<Right, Output = T> + DivAssign<Right>,
[src]
T: Div<Right, Output = T> + DivAssign<Right>,
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> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<V> IntoPnt<V> for V
[src]
impl<V> IntoVec<V> for V
[src]
impl<T> MultiplicativeGroup for T where
T: AbstractGroup<Multiplicative> + MultiplicativeLoop + MultiplicativeMonoid,
[src]
T: AbstractGroup<Multiplicative> + MultiplicativeLoop + MultiplicativeMonoid,
impl<T> MultiplicativeLoop for T where
T: AbstractLoop<Multiplicative> + MultiplicativeQuasigroup + One,
[src]
T: AbstractLoop<Multiplicative> + MultiplicativeQuasigroup + One,
impl<T> MultiplicativeMagma for T where
T: AbstractMagma<Multiplicative>,
[src]
T: AbstractMagma<Multiplicative>,
impl<T> MultiplicativeMonoid for T where
T: AbstractMonoid<Multiplicative> + MultiplicativeSemigroup + One,
[src]
T: AbstractMonoid<Multiplicative> + MultiplicativeSemigroup + One,
impl<T> MultiplicativeQuasigroup for T where
T: AbstractQuasigroup<Multiplicative> + ClosedDiv<T> + MultiplicativeMagma,
[src]
T: AbstractQuasigroup<Multiplicative> + ClosedDiv<T> + MultiplicativeMagma,
impl<T> MultiplicativeSemigroup for T where
T: AbstractSemigroup<Multiplicative> + ClosedMul<T> + MultiplicativeMagma,
[src]
T: AbstractSemigroup<Multiplicative> + ClosedMul<T> + MultiplicativeMagma,
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<T> Same<T> for T
type Output = T
Should always be Self
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]
fn rotate_point(&self, pt: &E) -> E
[src]
fn scale_point(&self, pt: &E) -> E
[src]
fn rotate_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn scale_vector(
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
[src]
&self,
pt: &<E as EuclideanSpace>::Coordinates
) -> <E as EuclideanSpace>::Coordinates
fn inverse_translate_point(&self, pt: &E) -> E
[src]
fn inverse_rotate_point(&self, pt: &E) -> E
[src]
fn inverse_scale_point(&self, pt: &E) -> E
[src]
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
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
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<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<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<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<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,