[−][src]Struct na::Rotation
A rotation matrix.
Implementations
impl<N, D> Rotation<N, D> where
D: DimName,
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
pub fn matrix(
&self
) -> &Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
[src]
&self
) -> &Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
A reference to the underlying matrix representation of this rotation.
Example
let rot = Rotation3::from_axis_angle(&Vector3::z_axis(), f32::consts::FRAC_PI_6); let expected = Matrix3::new(0.8660254, -0.5, 0.0, 0.5, 0.8660254, 0.0, 0.0, 0.0, 1.0); assert_eq!(*rot.matrix(), expected); let rot = Rotation2::new(f32::consts::FRAC_PI_6); let expected = Matrix2::new(0.8660254, -0.5, 0.5, 0.8660254); assert_eq!(*rot.matrix(), expected);
pub unsafe fn matrix_mut(
&mut self
) -> &mut Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
[src]
&mut self
) -> &mut Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
Use .matrix_mut_unchecked()
instead.
A mutable reference to the underlying matrix representation of this rotation.
pub fn matrix_mut_unchecked(
&mut self
) -> &mut Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
[src]
&mut self
) -> &mut Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
A mutable reference to the underlying matrix representation of this rotation.
This is suffixed by "_unchecked" because this allows the user to replace the matrix by another one that is non-square, non-inversible, or non-orthonormal. If one of those properties is broken, subsequent method calls may be UB.
pub fn into_inner(
self
) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
[src]
self
) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
Unwraps the underlying matrix.
Example
let rot = Rotation3::from_axis_angle(&Vector3::z_axis(), f32::consts::FRAC_PI_6); let mat = rot.into_inner(); let expected = Matrix3::new(0.8660254, -0.5, 0.0, 0.5, 0.8660254, 0.0, 0.0, 0.0, 1.0); assert_eq!(mat, expected); let rot = Rotation2::new(f32::consts::FRAC_PI_6); let mat = rot.into_inner(); let expected = Matrix2::new(0.8660254, -0.5, 0.5, 0.8660254); assert_eq!(mat, expected);
pub fn unwrap(
self
) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
[src]
self
) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
use .into_inner()
instead
Unwraps the underlying matrix. Deprecated: Use Rotation::into_inner instead.
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>,
N: Zero + One,
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>,
N: Zero + One,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
Converts this rotation into its equivalent homogeneous transformation matrix.
This is the same as self.into()
.
Example
let rot = Rotation3::from_axis_angle(&Vector3::z_axis(), f32::consts::FRAC_PI_6); let expected = Matrix4::new(0.8660254, -0.5, 0.0, 0.0, 0.5, 0.8660254, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0); assert_eq!(rot.to_homogeneous(), expected); let rot = Rotation2::new(f32::consts::FRAC_PI_6); let expected = Matrix3::new(0.8660254, -0.5, 0.0, 0.5, 0.8660254, 0.0, 0.0, 0.0, 1.0); assert_eq!(rot.to_homogeneous(), expected);
pub fn from_matrix_unchecked(
matrix: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
) -> Rotation<N, D>
[src]
matrix: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
) -> Rotation<N, D>
Creates a new rotation from the given square matrix.
The matrix squareness is checked but not its orthonormality.
Example
let mat = Matrix3::new(0.8660254, -0.5, 0.0, 0.5, 0.8660254, 0.0, 0.0, 0.0, 1.0); let rot = Rotation3::from_matrix_unchecked(mat); assert_eq!(*rot.matrix(), mat); let mat = Matrix2::new(0.8660254, -0.5, 0.5, 0.8660254); let rot = Rotation2::from_matrix_unchecked(mat); assert_eq!(*rot.matrix(), mat);
#[must_use = "Did you mean to use transpose_mut()?"]pub fn transpose(&self) -> Rotation<N, D>
[src]
Transposes self
.
Same as .inverse()
because the inverse of a rotation matrix is its transform.
Example
let rot = Rotation3::new(Vector3::new(1.0, 2.0, 3.0)); let tr_rot = rot.transpose(); assert_relative_eq!(rot * tr_rot, Rotation3::identity(), epsilon = 1.0e-6); assert_relative_eq!(tr_rot * rot, Rotation3::identity(), epsilon = 1.0e-6); let rot = Rotation2::new(1.2); let tr_rot = rot.transpose(); assert_relative_eq!(rot * tr_rot, Rotation2::identity(), epsilon = 1.0e-6); assert_relative_eq!(tr_rot * rot, Rotation2::identity(), epsilon = 1.0e-6);
#[must_use = "Did you mean to use inverse_mut()?"]pub fn inverse(&self) -> Rotation<N, D>
[src]
Inverts self
.
Same as .transpose()
because the inverse of a rotation matrix is its transform.
Example
let rot = Rotation3::new(Vector3::new(1.0, 2.0, 3.0)); let inv = rot.inverse(); assert_relative_eq!(rot * inv, Rotation3::identity(), epsilon = 1.0e-6); assert_relative_eq!(inv * rot, Rotation3::identity(), epsilon = 1.0e-6); let rot = Rotation2::new(1.2); let inv = rot.inverse(); assert_relative_eq!(rot * inv, Rotation2::identity(), epsilon = 1.0e-6); assert_relative_eq!(inv * rot, Rotation2::identity(), epsilon = 1.0e-6);
pub fn transpose_mut(&mut self)
[src]
Transposes self
in-place.
Same as .inverse_mut()
because the inverse of a rotation matrix is its transform.
Example
let rot = Rotation3::new(Vector3::new(1.0, 2.0, 3.0)); let mut tr_rot = Rotation3::new(Vector3::new(1.0, 2.0, 3.0)); tr_rot.transpose_mut(); assert_relative_eq!(rot * tr_rot, Rotation3::identity(), epsilon = 1.0e-6); assert_relative_eq!(tr_rot * rot, Rotation3::identity(), epsilon = 1.0e-6); let rot = Rotation2::new(1.2); let mut tr_rot = Rotation2::new(1.2); tr_rot.transpose_mut(); assert_relative_eq!(rot * tr_rot, Rotation2::identity(), epsilon = 1.0e-6); assert_relative_eq!(tr_rot * rot, Rotation2::identity(), epsilon = 1.0e-6);
pub fn inverse_mut(&mut self)
[src]
Inverts self
in-place.
Same as .transpose_mut()
because the inverse of a rotation matrix is its transform.
Example
let rot = Rotation3::new(Vector3::new(1.0, 2.0, 3.0)); let mut inv = Rotation3::new(Vector3::new(1.0, 2.0, 3.0)); inv.inverse_mut(); assert_relative_eq!(rot * inv, Rotation3::identity(), epsilon = 1.0e-6); assert_relative_eq!(inv * rot, Rotation3::identity(), epsilon = 1.0e-6); let rot = Rotation2::new(1.2); let mut inv = Rotation2::new(1.2); inv.inverse_mut(); assert_relative_eq!(rot * inv, Rotation2::identity(), epsilon = 1.0e-6); assert_relative_eq!(inv * rot, Rotation2::identity(), epsilon = 1.0e-6);
impl<N, D> Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
pub fn transform_point(&self, pt: &Point<N, D>) -> Point<N, D>
[src]
Rotate the given point.
This is the same as the multiplication self * pt
.
Example
let rot = Rotation3::new(Vector3::y() * f32::consts::FRAC_PI_2); let transformed_point = rot.transform_point(&Point3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_point, Point3::new(3.0, 2.0, -1.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>
Rotate the given vector.
This is the same as the multiplication self * v
.
Example
let rot = Rotation3::new(Vector3::y() * f32::consts::FRAC_PI_2); let transformed_vector = rot.transform_vector(&Vector3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_vector, 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]
Rotate the given point by the inverse of this rotation. This may be cheaper than inverting the rotation and then transforming the given point.
Example
let rot = Rotation3::new(Vector3::y() * f32::consts::FRAC_PI_2); let transformed_point = rot.inverse_transform_point(&Point3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_point, Point3::new(-3.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>
Rotate the given vector by the inverse of this rotation. This may be cheaper than inverting the rotation and then transforming the given vector.
Example
let rot = Rotation3::new(Vector3::y() * f32::consts::FRAC_PI_2); let transformed_vector = rot.inverse_transform_vector(&Vector3::new(1.0, 2.0, 3.0)); assert_relative_eq!(transformed_vector, Vector3::new(-3.0, 2.0, 1.0), epsilon = 1.0e-6);
impl<N, D> Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One,
DefaultAllocator: Allocator<N, D, D>,
pub fn identity() -> Rotation<N, D>
[src]
Creates a new square identity rotation of the given dimension
.
Example
let rot1 = Quaternion::identity(); let rot2 = Quaternion::new(1.0, 2.0, 3.0, 4.0); assert_eq!(rot1 * rot2, rot2); assert_eq!(rot2 * rot1, rot2);
impl<N> Rotation<N, U2> where
N: SimdRealField,
[src]
N: SimdRealField,
pub fn new(angle: N) -> Rotation<N, U2>
[src]
Builds a 2 dimensional rotation matrix from an angle in radian.
Example
let rot = Rotation2::new(f32::consts::FRAC_PI_2); assert_relative_eq!(rot * Point2::new(3.0, 4.0), Point2::new(-4.0, 3.0));
pub fn from_scaled_axis<SB>(axisangle: Matrix<N, U1, U1, SB>) -> Rotation<N, U2> where
SB: Storage<N, U1, U1>,
[src]
SB: Storage<N, U1, U1>,
Builds a 2 dimensional rotation matrix from an angle in radian wrapped in a 1-dimensional vector.
This is generally used in the context of generic programming. Using
the ::new(angle)
method instead is more common.
pub fn from_matrix(
m: &Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer>
) -> Rotation<N, U2> where
N: RealField,
[src]
m: &Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer>
) -> Rotation<N, U2> where
N: RealField,
Builds a rotation matrix by extracting the rotation part of the given transformation m
.
This is an iterative method. See .from_matrix_eps
to provide mover
convergence parameters and starting solution.
This implements "A Robust Method to Extract the Rotational Part of Deformations" by Müller et al.
pub fn from_matrix_eps(
m: &Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer>,
eps: N,
max_iter: usize,
guess: Rotation<N, U2>
) -> Rotation<N, U2> where
N: RealField,
[src]
m: &Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer>,
eps: N,
max_iter: usize,
guess: Rotation<N, U2>
) -> Rotation<N, U2> where
N: RealField,
Builds a rotation matrix by extracting the rotation part of the given transformation m
.
This implements "A Robust Method to Extract the Rotational Part of Deformations" by Müller et al.
Parameters
m
: the matrix from which the rotational part is to be extracted.eps
: the angular errors tolerated between the current rotation and the optimal one.max_iter
: the maximum number of iterations. Loops indefinitely until convergence if set to0
.guess
: an estimate of the solution. Convergence will be significantly faster if an initial solution close to the actual solution is provided. Can be set toRotation2::identity()
if no other guesses come to mind.
pub fn rotation_between<SB, SC>(
a: &Matrix<N, U2, U1, SB>,
b: &Matrix<N, U2, U1, SC>
) -> Rotation<N, U2> where
N: RealField,
SB: Storage<N, U2, U1>,
SC: Storage<N, U2, U1>,
[src]
a: &Matrix<N, U2, U1, SB>,
b: &Matrix<N, U2, U1, SC>
) -> Rotation<N, U2> where
N: RealField,
SB: Storage<N, U2, U1>,
SC: Storage<N, U2, U1>,
The rotation matrix required to align a
and b
but with its angle.
This is the rotation R
such that (R * a).angle(b) == 0 && (R * a).dot(b).is_positive()
.
Example
let a = Vector2::new(1.0, 2.0); let b = Vector2::new(2.0, 1.0); let rot = Rotation2::rotation_between(&a, &b); assert_relative_eq!(rot * a, b); assert_relative_eq!(rot.inverse() * b, a);
pub fn scaled_rotation_between<SB, SC>(
a: &Matrix<N, U2, U1, SB>,
b: &Matrix<N, U2, U1, SC>,
s: N
) -> Rotation<N, U2> where
N: RealField,
SB: Storage<N, U2, U1>,
SC: Storage<N, U2, U1>,
[src]
a: &Matrix<N, U2, U1, SB>,
b: &Matrix<N, U2, U1, SC>,
s: N
) -> Rotation<N, U2> where
N: RealField,
SB: Storage<N, U2, U1>,
SC: Storage<N, U2, U1>,
The smallest rotation needed to make a
and b
collinear and point toward the same
direction, raised to the power s
.
Example
let a = Vector2::new(1.0, 2.0); let b = Vector2::new(2.0, 1.0); let rot2 = Rotation2::scaled_rotation_between(&a, &b, 0.2); let rot5 = Rotation2::scaled_rotation_between(&a, &b, 0.5); assert_relative_eq!(rot2 * rot2 * rot2 * rot2 * rot2 * a, b, epsilon = 1.0e-6); assert_relative_eq!(rot5 * rot5 * a, b, epsilon = 1.0e-6);
pub fn angle(&self) -> N
[src]
pub fn angle_to(&self, other: &Rotation<N, U2>) -> N
[src]
The rotation angle needed to make self
and other
coincide.
Example
let rot1 = Rotation2::new(0.1); let rot2 = Rotation2::new(1.7); assert_relative_eq!(rot1.angle_to(&rot2), 1.6);
pub fn rotation_to(&self, other: &Rotation<N, U2>) -> Rotation<N, U2>
[src]
The rotation matrix needed to make self
and other
coincide.
The result is such that: self.rotation_to(other) * self == other
.
Example
let rot1 = Rotation2::new(0.1); let rot2 = Rotation2::new(1.7); let rot_to = rot1.rotation_to(&rot2); assert_relative_eq!(rot_to * rot1, rot2); assert_relative_eq!(rot_to.inverse() * rot2, rot1);
pub fn renormalize(&mut self) where
N: RealField,
[src]
N: RealField,
Ensure this rotation is an orthonormal rotation matrix. This is useful when repeated computations might cause the matrix from progressively not being orthonormal anymore.
pub fn powf(&self, n: N) -> Rotation<N, U2>
[src]
Raise the quaternion to a given floating power, i.e., returns the rotation with the angle
of self
multiplied by n
.
Example
let rot = Rotation2::new(0.78); let pow = rot.powf(2.0); assert_relative_eq!(pow.angle(), 2.0 * 0.78);
pub fn scaled_axis(
&self
) -> Matrix<N, U1, U1, <DefaultAllocator as Allocator<N, U1, U1>>::Buffer>
[src]
&self
) -> Matrix<N, U1, U1, <DefaultAllocator as Allocator<N, U1, U1>>::Buffer>
The rotation angle returned as a 1-dimensional vector.
This is generally used in the context of generic programming. Using
the .angle()
method instead is more common.
impl<N> Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
pub fn new<SB>(axisangle: Matrix<N, U3, U1, SB>) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
[src]
SB: Storage<N, U3, U1>,
Builds a 3 dimensional rotation matrix from an axis and an angle.
Arguments
axisangle
- A vector representing the rotation. Its magnitude is the amount of rotation in radian. Its direction is the axis of rotation.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; // 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); let rot = Rotation3::new(axisangle); assert_relative_eq!(rot * pt, Point3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); assert_relative_eq!(rot * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); // A zero vector yields an identity. assert_eq!(Rotation3::new(Vector3::<f32>::zeros()), Rotation3::identity());
pub fn from_matrix(
m: &Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>
) -> Rotation<N, U3> where
N: RealField,
[src]
m: &Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>
) -> Rotation<N, U3> where
N: RealField,
Builds a rotation matrix by extracting the rotation part of the given transformation m
.
This is an iterative method. See .from_matrix_eps
to provide mover
convergence parameters and starting solution.
This implements "A Robust Method to Extract the Rotational Part of Deformations" by Müller et al.
pub fn from_matrix_eps(
m: &Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>,
eps: N,
max_iter: usize,
guess: Rotation<N, U3>
) -> Rotation<N, U3> where
N: RealField,
[src]
m: &Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>,
eps: N,
max_iter: usize,
guess: Rotation<N, U3>
) -> Rotation<N, U3> where
N: RealField,
Builds a rotation matrix by extracting the rotation part of the given transformation m
.
This implements "A Robust Method to Extract the Rotational Part of Deformations" by Müller et al.
Parameters
m
: the matrix from which the rotational part is to be extracted.eps
: the angular errors tolerated between the current rotation and the optimal one.max_iter
: the maximum number of iterations. Loops indefinitely until convergence if set to0
.guess
: a guess of the solution. Convergence will be significantly faster if an initial solution close to the actual solution is provided. Can be set toRotation3::identity()
if no other guesses come to mind.
pub fn from_scaled_axis<SB>(axisangle: Matrix<N, U3, U1, SB>) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
[src]
SB: Storage<N, U3, U1>,
Builds a 3D rotation matrix from an axis scaled by the rotation angle.
This is the same as Self::new(axisangle)
.
Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2; // 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); let rot = Rotation3::new(axisangle); assert_relative_eq!(rot * pt, Point3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); assert_relative_eq!(rot * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); // A zero vector yields an identity. assert_eq!(Rotation3::from_scaled_axis(Vector3::<f32>::zeros()), Rotation3::identity());
pub fn from_axis_angle<SB>(
axis: &Unit<Matrix<N, U3, U1, SB>>,
angle: N
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
[src]
axis: &Unit<Matrix<N, U3, U1, SB>>,
angle: N
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
Builds a 3D rotation matrix from an axis and a rotation angle.
Example
let axis = Vector3::y_axis(); let angle = f32::consts::FRAC_PI_2; // 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); let rot = Rotation3::from_axis_angle(&axis, angle); assert_eq!(rot.axis().unwrap(), axis); assert_eq!(rot.angle(), angle); assert_relative_eq!(rot * pt, Point3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); assert_relative_eq!(rot * vec, Vector3::new(6.0, 5.0, -4.0), epsilon = 1.0e-6); // A zero vector yields an identity. assert_eq!(Rotation3::from_scaled_axis(Vector3::<f32>::zeros()), Rotation3::identity());
pub fn from_euler_angles(roll: N, pitch: N, yaw: N) -> Rotation<N, U3>
[src]
Creates a new rotation from Euler angles.
The primitive rotations are applied in order: 1 roll − 2 pitch − 3 yaw.
Example
let rot = Rotation3::from_euler_angles(0.1, 0.2, 0.3); let euler = rot.euler_angles(); assert_relative_eq!(euler.0, 0.1, epsilon = 1.0e-6); assert_relative_eq!(euler.1, 0.2, epsilon = 1.0e-6); assert_relative_eq!(euler.2, 0.3, epsilon = 1.0e-6);
pub fn to_euler_angles(&self) -> (N, N, N) where
N: RealField,
[src]
N: RealField,
This is renamed to use .euler_angles()
.
Creates Euler angles from a rotation.
The angles are produced in the form (roll, pitch, yaw).
pub fn euler_angles(&self) -> (N, N, N) where
N: RealField,
[src]
N: RealField,
Euler angles corresponding to this rotation from a rotation.
The angles are produced in the form (roll, pitch, yaw).
Example
let rot = Rotation3::from_euler_angles(0.1, 0.2, 0.3); let euler = rot.euler_angles(); assert_relative_eq!(euler.0, 0.1, epsilon = 1.0e-6); assert_relative_eq!(euler.1, 0.2, epsilon = 1.0e-6); assert_relative_eq!(euler.2, 0.3, epsilon = 1.0e-6);
pub fn renormalize(&mut self) where
N: RealField,
[src]
N: RealField,
Ensure this rotation is an orthonormal rotation matrix. This is useful when repeated computations might cause the matrix from progressively not being orthonormal anymore.
pub fn face_towards<SB, SC>(
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
[src]
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
Creates a rotation that corresponds to the local frame of an observer standing at the
origin and looking toward dir
.
It maps the z
axis to the direction dir
.
Arguments
- dir - The look direction, that is, direction the matrix
z
axis will be aligned with. - up - The vertical direction. The only requirement of this parameter is to not be
collinear to
dir
. Non-collinearity is not checked.
Example
let dir = Vector3::new(1.0, 2.0, 3.0); let up = Vector3::y(); let rot = Rotation3::face_towards(&dir, &up); assert_relative_eq!(rot * Vector3::z(), dir.normalize());
pub fn new_observer_frames<SB, SC>(
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
[src]
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
renamed to face_towards
Deprecated: Use [Rotation3::face_towards] instead.
pub fn look_at_rh<SB, SC>(
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
[src]
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
Builds a right-handed look-at view matrix without translation.
It maps the view direction dir
to the negative z
axis.
This conforms to the common notion of right handed look-at matrix from the computer
graphics community.
Arguments
- dir - The direction toward which the camera looks.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
dir
.
Example
let dir = Vector3::new(1.0, 2.0, 3.0); let up = Vector3::y(); let rot = Rotation3::look_at_rh(&dir, &up); assert_relative_eq!(rot * dir.normalize(), -Vector3::z());
pub fn look_at_lh<SB, SC>(
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
[src]
dir: &Matrix<N, U3, U1, SB>,
up: &Matrix<N, U3, U1, SC>
) -> Rotation<N, U3> where
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
Builds a left-handed look-at view matrix without translation.
It maps the view direction dir
to the positive z
axis.
This conforms to the common notion of left handed look-at matrix from the computer
graphics community.
Arguments
- dir - The direction toward which the camera looks.
- up - A vector approximately aligned with required the vertical axis. The only
requirement of this parameter is to not be collinear to
dir
.
Example
let dir = Vector3::new(1.0, 2.0, 3.0); let up = Vector3::y(); let rot = Rotation3::look_at_lh(&dir, &up); assert_relative_eq!(rot * dir.normalize(), Vector3::z());
pub fn rotation_between<SB, SC>(
a: &Matrix<N, U3, U1, SB>,
b: &Matrix<N, U3, U1, SC>
) -> Option<Rotation<N, U3>> where
N: RealField,
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
[src]
a: &Matrix<N, U3, U1, SB>,
b: &Matrix<N, U3, U1, SC>
) -> Option<Rotation<N, U3>> where
N: RealField,
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
The rotation matrix required to align a
and b
but with its angle.
This is the rotation R
such that (R * a).angle(b) == 0 && (R * a).dot(b).is_positive()
.
Example
let a = Vector3::new(1.0, 2.0, 3.0); let b = Vector3::new(3.0, 1.0, 2.0); let rot = Rotation3::rotation_between(&a, &b).unwrap(); assert_relative_eq!(rot * a, b, epsilon = 1.0e-6); assert_relative_eq!(rot.inverse() * b, a, epsilon = 1.0e-6);
pub fn scaled_rotation_between<SB, SC>(
a: &Matrix<N, U3, U1, SB>,
b: &Matrix<N, U3, U1, SC>,
n: N
) -> Option<Rotation<N, U3>> where
N: RealField,
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
[src]
a: &Matrix<N, U3, U1, SB>,
b: &Matrix<N, U3, U1, SC>,
n: N
) -> Option<Rotation<N, U3>> where
N: RealField,
SB: Storage<N, U3, U1>,
SC: Storage<N, U3, U1>,
The smallest rotation needed to make a
and b
collinear and point toward the same
direction, raised to the power s
.
Example
let a = Vector3::new(1.0, 2.0, 3.0); let b = Vector3::new(3.0, 1.0, 2.0); let rot2 = Rotation3::scaled_rotation_between(&a, &b, 0.2).unwrap(); let rot5 = Rotation3::scaled_rotation_between(&a, &b, 0.5).unwrap(); assert_relative_eq!(rot2 * rot2 * rot2 * rot2 * rot2 * a, b, epsilon = 1.0e-6); assert_relative_eq!(rot5 * rot5 * a, b, epsilon = 1.0e-6);
pub fn angle(&self) -> N
[src]
The rotation angle in [0; pi].
Example
let axis = Unit::new_normalize(Vector3::new(1.0, 2.0, 3.0)); let rot = Rotation3::from_axis_angle(&axis, 1.78); assert_relative_eq!(rot.angle(), 1.78);
pub fn axis(
&self
) -> Option<Unit<Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>>> where
N: RealField,
[src]
&self
) -> Option<Unit<Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>>> where
N: RealField,
The rotation axis. Returns None
if the rotation angle is zero or PI.
Example
let axis = Unit::new_normalize(Vector3::new(1.0, 2.0, 3.0)); let angle = 1.2; let rot = Rotation3::from_axis_angle(&axis, angle); assert_relative_eq!(rot.axis().unwrap(), axis); // Case with a zero angle. let rot = Rotation3::from_axis_angle(&axis, 0.0); assert!(rot.axis().is_none());
pub fn scaled_axis(
&self
) -> Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer> where
N: RealField,
[src]
&self
) -> Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer> where
N: RealField,
The rotation axis multiplied by the rotation angle.
Example
let axisangle = Vector3::new(0.1, 0.2, 0.3); let rot = Rotation3::new(axisangle); assert_relative_eq!(rot.scaled_axis(), axisangle, epsilon = 1.0e-6);
pub fn axis_angle(
&self
) -> Option<(Unit<Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>>, N)> where
N: RealField,
[src]
&self
) -> Option<(Unit<Matrix<N, U3, U1, <DefaultAllocator as Allocator<N, U3, U1>>::Buffer>>, N)> where
N: RealField,
The rotation axis and angle in ]0, pi] of this unit quaternion.
Returns None
if the angle is zero.
Example
let axis = Unit::new_normalize(Vector3::new(1.0, 2.0, 3.0)); let angle = 1.2; let rot = Rotation3::from_axis_angle(&axis, angle); let axis_angle = rot.axis_angle().unwrap(); assert_relative_eq!(axis_angle.0, axis); assert_relative_eq!(axis_angle.1, angle); // Case with a zero angle. let rot = Rotation3::from_axis_angle(&axis, 0.0); assert!(rot.axis_angle().is_none());
pub fn angle_to(&self, other: &Rotation<N, U3>) -> N
[src]
The rotation angle needed to make self
and other
coincide.
Example
let rot1 = Rotation3::from_axis_angle(&Vector3::y_axis(), 1.0); let rot2 = Rotation3::from_axis_angle(&Vector3::x_axis(), 0.1); assert_relative_eq!(rot1.angle_to(&rot2), 1.0045657, epsilon = 1.0e-6);
pub fn rotation_to(&self, other: &Rotation<N, U3>) -> Rotation<N, U3>
[src]
The rotation matrix needed to make self
and other
coincide.
The result is such that: self.rotation_to(other) * self == other
.
Example
let rot1 = Rotation3::from_axis_angle(&Vector3::y_axis(), 1.0); let rot2 = Rotation3::from_axis_angle(&Vector3::x_axis(), 0.1); let rot_to = rot1.rotation_to(&rot2); assert_relative_eq!(rot_to * rot1, rot2, epsilon = 1.0e-6);
pub fn powf(&self, n: N) -> Rotation<N, U3> where
N: RealField,
[src]
N: RealField,
Raise the quaternion to a given floating power, i.e., returns the rotation with the same
axis as self
and an angle equal to self.angle()
multiplied by n
.
Example
let axis = Unit::new_normalize(Vector3::new(1.0, 2.0, 3.0)); let angle = 1.2; let rot = Rotation3::from_axis_angle(&axis, angle); let pow = rot.powf(2.0); assert_relative_eq!(pow.axis().unwrap(), axis, epsilon = 1.0e-6); assert_eq!(pow.angle(), 2.4);
Trait Implementations
impl<N, D> AbsDiffEq<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + AbsDiffEq<N>,
DefaultAllocator: Allocator<N, D, D>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
[src]
D: DimName,
N: Scalar + AbsDiffEq<N>,
DefaultAllocator: Allocator<N, D, D>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
type Epsilon = <N as AbsDiffEq<N>>::Epsilon
Used for specifying relative comparisons.
fn default_epsilon() -> <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon
[src]
fn abs_diff_eq(
&self,
other: &Rotation<N, D>,
epsilon: <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon
) -> bool
[src]
&self,
other: &Rotation<N, D>,
epsilon: <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon
) -> bool
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
impl<N, D> AbstractRotation<N, D> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
fn identity() -> Rotation<N, D>
[src]
fn inverse(&self) -> Rotation<N, D>
[src]
fn inverse_mut(&mut self)
[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> where
DefaultAllocator: Allocator<N, D, U1>,
[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> where
DefaultAllocator: Allocator<N, D, U1>,
fn transform_point(&self, p: &Point<N, D>) -> Point<N, D> where
DefaultAllocator: Allocator<N, D, U1>,
[src]
DefaultAllocator: Allocator<N, D, U1>,
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> where
DefaultAllocator: Allocator<N, D, U1>,
[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> where
DefaultAllocator: Allocator<N, D, U1>,
fn inverse_transform_point(&self, p: &Point<N, D>) -> Point<N, D> where
DefaultAllocator: Allocator<N, D, U1>,
[src]
DefaultAllocator: Allocator<N, D, U1>,
impl<N, D> Clone for Rotation<N, D> where
D: DimName,
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
<DefaultAllocator as Allocator<N, D, D>>::Buffer: Clone,
[src]
D: DimName,
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
<DefaultAllocator as Allocator<N, D, D>>::Buffer: Clone,
impl<N, D> Copy for Rotation<N, D> where
D: DimName,
N: Scalar + Copy,
DefaultAllocator: Allocator<N, D, D>,
<DefaultAllocator as Allocator<N, D, D>>::Buffer: Copy,
[src]
D: DimName,
N: Scalar + Copy,
DefaultAllocator: Allocator<N, D, D>,
<DefaultAllocator as Allocator<N, D, D>>::Buffer: Copy,
impl<N, D> Debug for Rotation<N, D> where
D: DimName + Debug,
N: Scalar + Debug,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName + Debug,
N: Scalar + Debug,
DefaultAllocator: Allocator<N, D, D>,
impl<N, D> Display for Rotation<N, D> where
D: DimName,
N: RealField + Display,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<usize, D, D>,
[src]
D: DimName,
N: RealField + Display,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<usize, D, D>,
impl<'a, 'b, N, D> Div<&'b Isometry<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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, D> Div<&'b Isometry<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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<'b, N, D> Div<&'b Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: &'b Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
impl<'b, N, D> Div<&'b Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Rotation<N, D>
) -> <Rotation<N, D> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
right: &'b Rotation<N, D>
) -> <Rotation<N, D> as Div<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D> Div<&'b Rotation<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Rotation<N, D>
) -> <&'a Rotation<N, D> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
right: &'b Rotation<N, D>
) -> <&'a Rotation<N, D> as Div<&'b Rotation<N, D>>>::Output
impl<'b, N, D, C> Div<&'b Rotation<N, D>> for Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, D>
) -> <Transform<N, D, C> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <Transform<N, D, C> as Div<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D, C> Div<&'b Rotation<N, D>> for &'a Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, D>
) -> <&'a Transform<N, D, C> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <&'a Transform<N, D, C> as Div<&'b Rotation<N, D>>>::Output
impl<'b, N, D> Div<&'b Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D> Div<&'b Rotation<N, D>> for &'a Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: &'b Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D> Div<&'b Rotation<N, D>> for &'a Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Div<&'b Rotation<N, D>>>::Output
impl<'b, N, R1, C1, D2, SA> Div<&'b Rotation<N, D2>> for Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Div<&'b Rotation<N, D2>>>::Output
[src]
self,
right: &'b Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Div<&'b Rotation<N, D2>>>::Output
impl<'a, 'b, N, R1, C1, D2, SA> Div<&'b Rotation<N, D2>> for &'a Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Div<&'b Rotation<N, D2>>>::Output
[src]
self,
right: &'b Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Div<&'b Rotation<N, D2>>>::Output
impl<'a, 'b, N> Div<&'b Rotation<N, U2>> for &'a Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Div<&'b Rotation<N, U2>>>::Output
[src]
self,
rhs: &'b Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Div<&'b Rotation<N, U2>>>::Output
impl<'b, N> Div<&'b Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, U2>
) -> <Unit<Complex<N>> as Div<&'b Rotation<N, U2>>>::Output
[src]
self,
rhs: &'b Rotation<N, U2>
) -> <Unit<Complex<N>> as Div<&'b Rotation<N, U2>>>::Output
impl<'b, N> Div<&'b Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Div<&'b Rotation<N, U3>>>::Output
[src]
self,
rhs: &'b Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Div<&'b Rotation<N, U3>>>::Output
impl<'a, 'b, N> Div<&'b Rotation<N, U3>> for &'a Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Div<&'b Rotation<N, U3>>>::Output
[src]
self,
rhs: &'b Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Div<&'b Rotation<N, U3>>>::Output
impl<'b, N, D> Div<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, 'b, N, D> Div<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'b, N, D, C> Div<&'b Transform<N, D, C>> for Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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 div(
self,
rhs: &'b Transform<N, D, C>
) -> <Rotation<N, D> as Div<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <Rotation<N, D> as Div<&'b Transform<N, D, C>>>::Output
impl<'a, 'b, N, D, C> Div<&'b Transform<N, D, C>> for &'a Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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 div(
self,
rhs: &'b Transform<N, D, C>
) -> <&'a Rotation<N, D> as Div<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <&'a Rotation<N, D> as Div<&'b Transform<N, D, C>>>::Output
impl<'b, N> Div<&'b Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Unit<Complex<N>>
) -> <Rotation<N, U2> as Div<&'b Unit<Complex<N>>>>::Output
[src]
self,
rhs: &'b Unit<Complex<N>>
) -> <Rotation<N, U2> as Div<&'b Unit<Complex<N>>>>::Output
impl<'a, 'b, N> Div<&'b Unit<Complex<N>>> for &'a Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Div<&'b Unit<Complex<N>>>>::Output
[src]
self,
rhs: &'b Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Div<&'b Unit<Complex<N>>>>::Output
impl<'a, 'b, N> Div<&'b Unit<Quaternion<N>>> for &'a Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Div<&'b Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: &'b Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Div<&'b Unit<Quaternion<N>>>>::Output
impl<'b, N> Div<&'b Unit<Quaternion<N>>> for Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: &'b Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Div<&'b Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: &'b Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Div<&'b Unit<Quaternion<N>>>>::Output
impl<N, D> Div<Isometry<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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, D> Div<Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
impl<'a, N, D, C> Div<Rotation<N, D>> for &'a Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, D>
) -> <&'a Transform<N, D, C> as Div<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <&'a Transform<N, D, C> as Div<Rotation<N, D>>>::Output
impl<'a, N, D> Div<Rotation<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the /
operator.
fn div(
self,
right: Rotation<N, D>
) -> <&'a Rotation<N, D> as Div<Rotation<N, D>>>::Output
[src]
self,
right: Rotation<N, D>
) -> <&'a Rotation<N, D> as Div<Rotation<N, D>>>::Output
impl<N, D> Div<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the /
operator.
fn div(
self,
right: Rotation<N, D>
) -> <Rotation<N, D> as Div<Rotation<N, D>>>::Output
[src]
self,
right: Rotation<N, D>
) -> <Rotation<N, D> as Div<Rotation<N, D>>>::Output
impl<N, D, C> Div<Rotation<N, D>> for Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, D>
) -> <Transform<N, D, C> as Div<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <Transform<N, D, C> as Div<Rotation<N, D>>>::Output
impl<'a, N, D> Div<Rotation<N, D>> for &'a Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
impl<N, D> Div<Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
impl<'a, N, D> Div<Rotation<N, D>> for &'a Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Div<Rotation<N, D>>>::Output
impl<'a, N, R1, C1, D2, SA> Div<Rotation<N, D2>> for &'a Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the /
operator.
fn div(
self,
right: Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Div<Rotation<N, D2>>>::Output
[src]
self,
right: Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Div<Rotation<N, D2>>>::Output
impl<N, R1, C1, D2, SA> Div<Rotation<N, D2>> for Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the /
operator.
fn div(
self,
right: Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Div<Rotation<N, D2>>>::Output
[src]
self,
right: Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Div<Rotation<N, D2>>>::Output
impl<N> Div<Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, U2>
) -> <Unit<Complex<N>> as Div<Rotation<N, U2>>>::Output
[src]
self,
rhs: Rotation<N, U2>
) -> <Unit<Complex<N>> as Div<Rotation<N, U2>>>::Output
impl<'a, N> Div<Rotation<N, U2>> for &'a Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Div<Rotation<N, U2>>>::Output
[src]
self,
rhs: Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Div<Rotation<N, U2>>>::Output
impl<'a, N> Div<Rotation<N, U3>> for &'a Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Div<Rotation<N, U3>>>::Output
[src]
self,
rhs: Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Div<Rotation<N, U3>>>::Output
impl<N> Div<Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Div<Rotation<N, U3>>>::Output
[src]
self,
rhs: Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Div<Rotation<N, U3>>>::Output
impl<'a, N, D> Div<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
impl<N, D> Div<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the /
operator.
fn div(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Div<Similarity<N, D, Rotation<N, D>>>>::Output
impl<N, D, C> Div<Transform<N, D, C>> for Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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 div(
self,
rhs: Transform<N, D, C>
) -> <Rotation<N, D> as Div<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <Rotation<N, D> as Div<Transform<N, D, C>>>::Output
impl<'a, N, D, C> Div<Transform<N, D, C>> for &'a Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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 div(
self,
rhs: Transform<N, D, C>
) -> <&'a Rotation<N, D> as Div<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <&'a Rotation<N, D> as Div<Transform<N, D, C>>>::Output
impl<'a, N> Div<Unit<Complex<N>>> for &'a Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Div<Unit<Complex<N>>>>::Output
[src]
self,
rhs: Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Div<Unit<Complex<N>>>>::Output
impl<N> Div<Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Unit<Complex<N>>
) -> <Rotation<N, U2> as Div<Unit<Complex<N>>>>::Output
[src]
self,
rhs: Unit<Complex<N>>
) -> <Rotation<N, U2> as Div<Unit<Complex<N>>>>::Output
impl<'a, N> Div<Unit<Quaternion<N>>> for &'a Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Div<Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Div<Unit<Quaternion<N>>>>::Output
impl<N> Div<Unit<Quaternion<N>>> for Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the /
operator.
fn div(
self,
rhs: Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Div<Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Div<Unit<Quaternion<N>>>>::Output
impl<'b, N, R1, C1> DivAssign<&'b Rotation<N, C1>> for Matrix<N, R1, C1, <DefaultAllocator as Allocator<N, R1, C1>>::Buffer> where
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
[src]
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
fn div_assign(&mut self, right: &'b Rotation<N, C1>)
[src]
impl<'b, N, D> DivAssign<&'b Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, right: &'b Rotation<N, D>)
[src]
impl<'b, N, D> DivAssign<&'b Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, rhs: &'b Rotation<N, D>)
[src]
impl<'b, N, D, C> DivAssign<&'b Rotation<N, D>> for Transform<N, D, C> where
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
[src]
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, rhs: &'b Rotation<N, D>)
[src]
impl<'b, N, D> DivAssign<&'b Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, rhs: &'b Rotation<N, D>)
[src]
impl<'b, N> DivAssign<&'b Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn div_assign(&mut self, rhs: &'b Rotation<N, U2>)
[src]
impl<'b, N> DivAssign<&'b Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
fn div_assign(&mut self, rhs: &'b Rotation<N, U3>)
[src]
impl<'b, N> DivAssign<&'b Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn div_assign(&mut self, rhs: &'b Unit<Complex<N>>)
[src]
impl<N, R1, C1> DivAssign<Rotation<N, C1>> for Matrix<N, R1, C1, <DefaultAllocator as Allocator<N, R1, C1>>::Buffer> where
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
[src]
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
fn div_assign(&mut self, right: Rotation<N, C1>)
[src]
impl<N, D, C> DivAssign<Rotation<N, D>> for Transform<N, D, C> where
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
[src]
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, rhs: Rotation<N, D>)
[src]
impl<N, D> DivAssign<Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, rhs: Rotation<N, D>)
[src]
impl<N, D> DivAssign<Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, rhs: Rotation<N, D>)
[src]
impl<N, D> DivAssign<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
fn div_assign(&mut self, right: Rotation<N, D>)
[src]
impl<N> DivAssign<Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn div_assign(&mut self, rhs: Rotation<N, U2>)
[src]
impl<N> DivAssign<Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
fn div_assign(&mut self, rhs: Rotation<N, U3>)
[src]
impl<N> DivAssign<Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn div_assign(&mut self, rhs: Unit<Complex<N>>)
[src]
impl<N, D> Eq for Rotation<N, D> where
D: DimName,
N: Scalar + Eq,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Eq,
DefaultAllocator: Allocator<N, D, D>,
impl<N, D> From<[Rotation<<N as SimdValue>::Element, D>; 16]> for Rotation<N, D> where
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 16]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
[src]
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 16]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
impl<N, D> From<[Rotation<<N as SimdValue>::Element, D>; 2]> for Rotation<N, D> where
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 2]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
[src]
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 2]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
impl<N, D> From<[Rotation<<N as SimdValue>::Element, D>; 4]> for Rotation<N, D> where
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 4]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
[src]
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 4]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
impl<N, D> From<[Rotation<<N as SimdValue>::Element, D>; 8]> for Rotation<N, D> where
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 8]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
[src]
D: DimName,
N: Scalar + PrimitiveSimdValue + From<[<N as SimdValue>::Element; 8]>,
<N as SimdValue>::Element: Scalar,
<N as SimdValue>::Element: Copy,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
impl<N> From<Rotation<N, U2>> for Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer> where
N: RealField,
[src]
N: RealField,
fn from(
q: Rotation<N, U2>
) -> Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>
[src]
q: Rotation<N, U2>
) -> Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>
impl<N> From<Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
impl<N> From<Rotation<N, U2>> for Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer> where
N: RealField,
[src]
N: RealField,
fn from(
q: Rotation<N, U2>
) -> Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer>
[src]
q: Rotation<N, U2>
) -> Matrix<N, U2, U2, <DefaultAllocator as Allocator<N, U2, U2>>::Buffer>
impl<N> From<Rotation<N, U3>> for Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer> where
N: RealField,
[src]
N: RealField,
fn from(
q: Rotation<N, U3>
) -> Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>
[src]
q: Rotation<N, U3>
) -> Matrix<N, U3, U3, <DefaultAllocator as Allocator<N, U3, U3>>::Buffer>
impl<N> From<Rotation<N, U3>> for Matrix<N, U4, U4, <DefaultAllocator as Allocator<N, U4, U4>>::Buffer> where
N: RealField,
[src]
N: RealField,
fn from(
q: Rotation<N, U3>
) -> Matrix<N, U4, U4, <DefaultAllocator as Allocator<N, U4, U4>>::Buffer>
[src]
q: Rotation<N, U3>
) -> Matrix<N, U4, U4, <DefaultAllocator as Allocator<N, U4, U4>>::Buffer>
impl<N> From<Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
impl<N> From<Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
impl<N> From<Unit<Quaternion<N>>> for Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
impl<N, D> Hash for Rotation<N, D> where
D: DimName + Hash,
N: Scalar + Hash,
DefaultAllocator: Allocator<N, D, D>,
<DefaultAllocator as Allocator<N, D, D>>::Buffer: Hash,
[src]
D: DimName + Hash,
N: Scalar + Hash,
DefaultAllocator: Allocator<N, D, D>,
<DefaultAllocator as Allocator<N, D, D>>::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> Index<(usize, usize)> for Rotation<N, D> where
D: DimName,
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar,
DefaultAllocator: Allocator<N, D, D>,
type Output = N
The returned type after indexing.
fn index(&self, row_col: (usize, usize)) -> &N
[src]
impl<'a, 'b, N, D> Mul<&'b Isometry<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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<'b, N, D> Mul<&'b Isometry<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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, D1, R2, C2, SB> Mul<&'b Matrix<N, R2, C2, SB>> for &'a Rotation<N, D1> where
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
[src]
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
type Output = Matrix<N, D1, C2, <DefaultAllocator as Allocator<N, D1, C2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Matrix<N, R2, C2, SB>
) -> <&'a Rotation<N, D1> as Mul<&'b Matrix<N, R2, C2, SB>>>::Output
[src]
self,
right: &'b Matrix<N, R2, C2, SB>
) -> <&'a Rotation<N, D1> as Mul<&'b Matrix<N, R2, C2, SB>>>::Output
impl<'b, N, D1, R2, C2, SB> Mul<&'b Matrix<N, R2, C2, SB>> for Rotation<N, D1> where
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
[src]
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
type Output = Matrix<N, D1, C2, <DefaultAllocator as Allocator<N, D1, C2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Matrix<N, R2, C2, SB>
) -> <Rotation<N, D1> as Mul<&'b Matrix<N, R2, C2, SB>>>::Output
[src]
self,
right: &'b Matrix<N, R2, C2, SB>
) -> <Rotation<N, D1> as Mul<&'b Matrix<N, R2, C2, SB>>>::Output
impl<'a, 'b, N, D> Mul<&'b Point<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Point<N, D>
) -> <&'a Rotation<N, D> as Mul<&'b Point<N, D>>>::Output
[src]
self,
right: &'b Point<N, D>
) -> <&'a Rotation<N, D> as Mul<&'b Point<N, D>>>::Output
impl<'b, N, D> Mul<&'b Point<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Point<N, D>
) -> <Rotation<N, D> as Mul<&'b Point<N, D>>>::Output
[src]
self,
right: &'b Point<N, D>
) -> <Rotation<N, D> as Mul<&'b Point<N, D>>>::Output
impl<'a, 'b, N, D> Mul<&'b Rotation<N, D>> for &'a Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: &'b Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D> Mul<&'b Rotation<N, D>> for &'a Translation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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 Rotation<N, D>
) -> <&'a Translation<N, D> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
right: &'b Rotation<N, D>
) -> <&'a Translation<N, D> as Mul<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D> Mul<&'b Rotation<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Rotation<N, D>
) -> <&'a Rotation<N, D> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
right: &'b Rotation<N, D>
) -> <&'a Rotation<N, D> as Mul<&'b Rotation<N, D>>>::Output
impl<'b, N, D, C> Mul<&'b Rotation<N, D>> for Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, D>
) -> <Transform<N, D, C> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <Transform<N, D, C> as Mul<&'b Rotation<N, D>>>::Output
impl<'b, N, D> Mul<&'b Rotation<N, D>> for Translation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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 Rotation<N, D>
) -> <Translation<N, D> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
right: &'b Rotation<N, D>
) -> <Translation<N, D> as Mul<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D, C> Mul<&'b Rotation<N, D>> for &'a Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, D>
) -> <&'a Transform<N, D, C> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <&'a Transform<N, D, C> as Mul<&'b Rotation<N, D>>>::Output
impl<'b, N, D> Mul<&'b Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Rotation<N, D>
) -> <Rotation<N, D> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
right: &'b Rotation<N, D>
) -> <Rotation<N, D> as Mul<&'b Rotation<N, D>>>::Output
impl<'a, 'b, N, D> Mul<&'b Rotation<N, D>> for &'a Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
impl<'b, N, D> Mul<&'b Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
impl<'b, N, D> Mul<&'b Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: &'b Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
[src]
self,
rhs: &'b Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Mul<&'b Rotation<N, D>>>::Output
impl<'b, N, R1, C1, D2, SA> Mul<&'b Rotation<N, D2>> for Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Mul<&'b Rotation<N, D2>>>::Output
[src]
self,
right: &'b Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Mul<&'b Rotation<N, D2>>>::Output
impl<'a, 'b, N, R1, C1, D2, SA> Mul<&'b Rotation<N, D2>> for &'a Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Mul<&'b Rotation<N, D2>>>::Output
[src]
self,
right: &'b Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Mul<&'b Rotation<N, D2>>>::Output
impl<'a, 'b, N> Mul<&'b Rotation<N, U2>> for &'a Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Mul<&'b Rotation<N, U2>>>::Output
[src]
self,
rhs: &'b Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Mul<&'b Rotation<N, U2>>>::Output
impl<'b, N> Mul<&'b Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, U2>
) -> <Unit<Complex<N>> as Mul<&'b Rotation<N, U2>>>::Output
[src]
self,
rhs: &'b Rotation<N, U2>
) -> <Unit<Complex<N>> as Mul<&'b Rotation<N, U2>>>::Output
impl<'a, 'b, N> Mul<&'b Rotation<N, U3>> for &'a Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Mul<&'b Rotation<N, U3>>>::Output
[src]
self,
rhs: &'b Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Mul<&'b Rotation<N, U3>>>::Output
impl<'b, N> Mul<&'b Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Mul<&'b Rotation<N, U3>>>::Output
[src]
self,
rhs: &'b Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Mul<&'b Rotation<N, U3>>>::Output
impl<'a, 'b, N, D> Mul<&'b Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'b, N, D> Mul<&'b Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: &'b Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<&'b Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, 'b, N, D, C> Mul<&'b Transform<N, D, C>> for &'a Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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 Rotation<N, D> as Mul<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <&'a Rotation<N, D> as Mul<&'b Transform<N, D, C>>>::Output
impl<'b, N, D, C> Mul<&'b Transform<N, D, C>> for Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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>
) -> <Rotation<N, D> as Mul<&'b Transform<N, D, C>>>::Output
[src]
self,
rhs: &'b Transform<N, D, C>
) -> <Rotation<N, D> as Mul<&'b Transform<N, D, C>>>::Output
impl<'a, 'b, N, D> Mul<&'b Translation<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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 Translation<N, D>
) -> <&'a Rotation<N, D> as Mul<&'b Translation<N, D>>>::Output
[src]
self,
right: &'b Translation<N, D>
) -> <&'a Rotation<N, D> as Mul<&'b Translation<N, D>>>::Output
impl<'b, N, D> Mul<&'b Translation<N, D>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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 Translation<N, D>
) -> <Rotation<N, D> as Mul<&'b Translation<N, D>>>::Output
[src]
self,
right: &'b Translation<N, D>
) -> <Rotation<N, D> as Mul<&'b Translation<N, D>>>::Output
impl<'b, N> Mul<&'b Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Unit<Complex<N>>
) -> <Rotation<N, U2> as Mul<&'b Unit<Complex<N>>>>::Output
[src]
self,
rhs: &'b Unit<Complex<N>>
) -> <Rotation<N, U2> as Mul<&'b Unit<Complex<N>>>>::Output
impl<'a, 'b, N> Mul<&'b Unit<Complex<N>>> for &'a Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Mul<&'b Unit<Complex<N>>>>::Output
[src]
self,
rhs: &'b Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Mul<&'b Unit<Complex<N>>>>::Output
impl<'a, 'b, N, D, S> Mul<&'b Unit<Matrix<N, D, U1, S>>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, 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, S>>
) -> <&'a Rotation<N, D> as Mul<&'b Unit<Matrix<N, D, U1, S>>>>::Output
[src]
self,
right: &'b Unit<Matrix<N, D, U1, S>>
) -> <&'a Rotation<N, D> as Mul<&'b Unit<Matrix<N, D, U1, S>>>>::Output
impl<'b, N, D, S> Mul<&'b Unit<Matrix<N, D, U1, S>>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, 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, S>>
) -> <Rotation<N, D> as Mul<&'b Unit<Matrix<N, D, U1, S>>>>::Output
[src]
self,
right: &'b Unit<Matrix<N, D, U1, S>>
) -> <Rotation<N, D> as Mul<&'b Unit<Matrix<N, D, U1, S>>>>::Output
impl<'b, N> Mul<&'b Unit<Quaternion<N>>> for Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Mul<&'b Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: &'b Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Mul<&'b Unit<Quaternion<N>>>>::Output
impl<'a, 'b, N> Mul<&'b Unit<Quaternion<N>>> for &'a Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: &'b Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Mul<&'b Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: &'b Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Mul<&'b Unit<Quaternion<N>>>>::Output
impl<'a, N, D> Mul<Isometry<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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<N, D> Mul<Isometry<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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<N, D1, R2, C2, SB> Mul<Matrix<N, R2, C2, SB>> for Rotation<N, D1> where
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
[src]
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
type Output = Matrix<N, D1, C2, <DefaultAllocator as Allocator<N, D1, C2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: Matrix<N, R2, C2, SB>
) -> <Rotation<N, D1> as Mul<Matrix<N, R2, C2, SB>>>::Output
[src]
self,
right: Matrix<N, R2, C2, SB>
) -> <Rotation<N, D1> as Mul<Matrix<N, R2, C2, SB>>>::Output
impl<'a, N, D1, R2, C2, SB> Mul<Matrix<N, R2, C2, SB>> for &'a Rotation<N, D1> where
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
[src]
C2: Dim,
D1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R2: Dim,
SB: Storage<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, D1>,
DefaultAllocator: Allocator<N, R2, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
DefaultAllocator: Allocator<N, D1, C2>,
ShapeConstraint: AreMultipliable<D1, D1, R2, C2>,
type Output = Matrix<N, D1, C2, <DefaultAllocator as Allocator<N, D1, C2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: Matrix<N, R2, C2, SB>
) -> <&'a Rotation<N, D1> as Mul<Matrix<N, R2, C2, SB>>>::Output
[src]
self,
right: Matrix<N, R2, C2, SB>
) -> <&'a Rotation<N, D1> as Mul<Matrix<N, R2, C2, SB>>>::Output
impl<'a, N, D> Mul<Point<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Point<N, D>
) -> <&'a Rotation<N, D> as Mul<Point<N, D>>>::Output
[src]
self,
right: Point<N, D>
) -> <&'a Rotation<N, D> as Mul<Point<N, D>>>::Output
impl<N, D> Mul<Point<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
type Output = Point<N, D>
The resulting type after applying the *
operator.
fn mul(self, right: Point<N, D>) -> <Rotation<N, D> as Mul<Point<N, D>>>::Output
[src]
impl<'a, N, D> Mul<Rotation<N, D>> for &'a Translation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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: Rotation<N, D>
) -> <&'a Translation<N, D> as Mul<Rotation<N, D>>>::Output
[src]
self,
right: Rotation<N, D>
) -> <&'a Translation<N, D> as Mul<Rotation<N, D>>>::Output
impl<'a, N, D> Mul<Rotation<N, D>> for &'a Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <&'a Isometry<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
impl<N, D, C> Mul<Rotation<N, D>> for Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, D>
) -> <Transform<N, D, C> as Mul<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <Transform<N, D, C> as Mul<Rotation<N, D>>>::Output
impl<N, D> Mul<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Rotation<N, D>
) -> <Rotation<N, D> as Mul<Rotation<N, D>>>::Output
[src]
self,
right: Rotation<N, D>
) -> <Rotation<N, D> as Mul<Rotation<N, D>>>::Output
impl<'a, N, D> Mul<Rotation<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
type Output = Rotation<N, D>
The resulting type after applying the *
operator.
fn mul(
self,
right: Rotation<N, D>
) -> <&'a Rotation<N, D> as Mul<Rotation<N, D>>>::Output
[src]
self,
right: Rotation<N, D>
) -> <&'a Rotation<N, D> as Mul<Rotation<N, D>>>::Output
impl<'a, N, D> Mul<Rotation<N, D>> for &'a Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <&'a Similarity<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
impl<N, D> Mul<Rotation<N, D>> for Translation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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: Rotation<N, D>
) -> <Translation<N, D> as Mul<Rotation<N, D>>>::Output
[src]
self,
right: Rotation<N, D>
) -> <Translation<N, D> as Mul<Rotation<N, D>>>::Output
impl<'a, N, D, C> Mul<Rotation<N, D>> for &'a Transform<N, D, C> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
[src]
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, D>,
type Output = Transform<N, D, <C as TCategoryMul<TAffine>>::Representative>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, D>
) -> <&'a Transform<N, D, C> as Mul<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <&'a Transform<N, D, C> as Mul<Rotation<N, D>>>::Output
impl<N, D> Mul<Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <Similarity<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
impl<N, D> Mul<Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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,
rhs: Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
[src]
self,
rhs: Rotation<N, D>
) -> <Isometry<N, D, Rotation<N, D>> as Mul<Rotation<N, D>>>::Output
impl<'a, N, R1, C1, D2, SA> Mul<Rotation<N, D2>> for &'a Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Mul<Rotation<N, D2>>>::Output
[src]
self,
right: Rotation<N, D2>
) -> <&'a Matrix<N, R1, C1, SA> as Mul<Rotation<N, D2>>>::Output
impl<N, R1, C1, D2, SA> Mul<Rotation<N, D2>> for Matrix<N, R1, C1, SA> where
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
[src]
C1: Dim,
D2: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: Dim,
SA: Storage<N, R1, C1>,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, D2, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
DefaultAllocator: Allocator<N, R1, D2>,
ShapeConstraint: AreMultipliable<R1, C1, D2, D2>,
type Output = Matrix<N, R1, D2, <DefaultAllocator as Allocator<N, R1, D2>>::Buffer>
The resulting type after applying the *
operator.
fn mul(
self,
right: Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Mul<Rotation<N, D2>>>::Output
[src]
self,
right: Rotation<N, D2>
) -> <Matrix<N, R1, C1, SA> as Mul<Rotation<N, D2>>>::Output
impl<N> Mul<Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, U2>
) -> <Unit<Complex<N>> as Mul<Rotation<N, U2>>>::Output
[src]
self,
rhs: Rotation<N, U2>
) -> <Unit<Complex<N>> as Mul<Rotation<N, U2>>>::Output
impl<'a, N> Mul<Rotation<N, U2>> for &'a Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Mul<Rotation<N, U2>>>::Output
[src]
self,
rhs: Rotation<N, U2>
) -> <&'a Unit<Complex<N>> as Mul<Rotation<N, U2>>>::Output
impl<N> Mul<Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Mul<Rotation<N, U3>>>::Output
[src]
self,
rhs: Rotation<N, U3>
) -> <Unit<Quaternion<N>> as Mul<Rotation<N, U3>>>::Output
impl<'a, N> Mul<Rotation<N, U3>> for &'a Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Mul<Rotation<N, U3>>>::Output
[src]
self,
rhs: Rotation<N, U3>
) -> <&'a Unit<Quaternion<N>> as Mul<Rotation<N, U3>>>::Output
impl<N, D> Mul<Similarity<N, D, Rotation<N, D>>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, N, D> Mul<Similarity<N, D, Rotation<N, D>>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
type Output = Similarity<N, D, Rotation<N, D>>
The resulting type after applying the *
operator.
fn mul(
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
[src]
self,
right: Similarity<N, D, Rotation<N, D>>
) -> <&'a Rotation<N, D> as Mul<Similarity<N, D, Rotation<N, D>>>>::Output
impl<'a, N, D, C> Mul<Transform<N, D, C>> for &'a Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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 Rotation<N, D> as Mul<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <&'a Rotation<N, D> as Mul<Transform<N, D, C>>>::Output
impl<N, D, C> Mul<Transform<N, D, C>> for Rotation<N, D> where
C: TCategoryMul<TAffine>,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, D, D>,
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,
DefaultAllocator: Allocator<N, D, D>,
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>
) -> <Rotation<N, D> as Mul<Transform<N, D, C>>>::Output
[src]
self,
rhs: Transform<N, D, C>
) -> <Rotation<N, D> as Mul<Transform<N, D, C>>>::Output
impl<'a, N, D> Mul<Translation<N, D>> for &'a Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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: Translation<N, D>
) -> <&'a Rotation<N, D> as Mul<Translation<N, D>>>::Output
[src]
self,
right: Translation<N, D>
) -> <&'a Rotation<N, D> as Mul<Translation<N, D>>>::Output
impl<N, D> Mul<Translation<N, D>> for Rotation<N, D> where
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
[src]
D: DimName,
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
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: Translation<N, D>
) -> <Rotation<N, D> as Mul<Translation<N, D>>>::Output
[src]
self,
right: Translation<N, D>
) -> <Rotation<N, D> as Mul<Translation<N, D>>>::Output
impl<'a, N> Mul<Unit<Complex<N>>> for &'a Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Mul<Unit<Complex<N>>>>::Output
[src]
self,
rhs: Unit<Complex<N>>
) -> <&'a Rotation<N, U2> as Mul<Unit<Complex<N>>>>::Output
impl<N> Mul<Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
type Output = Unit<Complex<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Unit<Complex<N>>
) -> <Rotation<N, U2> as Mul<Unit<Complex<N>>>>::Output
[src]
self,
rhs: Unit<Complex<N>>
) -> <Rotation<N, U2> as Mul<Unit<Complex<N>>>>::Output
impl<'a, N, D, S> Mul<Unit<Matrix<N, D, U1, S>>> for &'a Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, 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, S>>
) -> <&'a Rotation<N, D> as Mul<Unit<Matrix<N, D, U1, S>>>>::Output
[src]
self,
right: Unit<Matrix<N, D, U1, S>>
) -> <&'a Rotation<N, D> as Mul<Unit<Matrix<N, D, U1, S>>>>::Output
impl<N, D, S> Mul<Unit<Matrix<N, D, U1, S>>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, D, U1>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
S: Storage<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, U1>,
ShapeConstraint: AreMultipliable<D, D, 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, S>>
) -> <Rotation<N, D> as Mul<Unit<Matrix<N, D, U1, S>>>>::Output
[src]
self,
right: Unit<Matrix<N, D, U1, S>>
) -> <Rotation<N, D> as Mul<Unit<Matrix<N, D, U1, S>>>>::Output
impl<'a, N> Mul<Unit<Quaternion<N>>> for &'a Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Mul<Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: Unit<Quaternion<N>>
) -> <&'a Rotation<N, U3> as Mul<Unit<Quaternion<N>>>>::Output
impl<N> Mul<Unit<Quaternion<N>>> for Rotation<N, U3> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U3, U3>,
DefaultAllocator: Allocator<N, U4, U1>,
type Output = Unit<Quaternion<N>>
The resulting type after applying the *
operator.
fn mul(
self,
rhs: Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Mul<Unit<Quaternion<N>>>>::Output
[src]
self,
rhs: Unit<Quaternion<N>>
) -> <Rotation<N, U3> as Mul<Unit<Quaternion<N>>>>::Output
impl<'b, N, R1, C1> MulAssign<&'b Rotation<N, C1>> for Matrix<N, R1, C1, <DefaultAllocator as Allocator<N, R1, C1>>::Buffer> where
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
[src]
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
fn mul_assign(&mut self, right: &'b Rotation<N, C1>)
[src]
impl<'b, N, D> MulAssign<&'b Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, right: &'b Rotation<N, D>)
[src]
impl<'b, N, D> MulAssign<&'b Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, rhs: &'b Rotation<N, D>)
[src]
impl<'b, N, D> MulAssign<&'b Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, rhs: &'b Rotation<N, D>)
[src]
impl<'b, N, D, C> MulAssign<&'b Rotation<N, D>> for Transform<N, D, C> where
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
[src]
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, rhs: &'b Rotation<N, D>)
[src]
impl<'b, N> MulAssign<&'b Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn mul_assign(&mut self, rhs: &'b Rotation<N, U2>)
[src]
impl<'b, N> MulAssign<&'b Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
fn mul_assign(&mut self, rhs: &'b Rotation<N, U3>)
[src]
impl<'b, N> MulAssign<&'b Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn mul_assign(&mut self, rhs: &'b Unit<Complex<N>>)
[src]
impl<N, R1, C1> MulAssign<Rotation<N, C1>> for Matrix<N, R1, C1, <DefaultAllocator as Allocator<N, R1, C1>>::Buffer> where
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
[src]
C1: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
R1: DimName,
DefaultAllocator: Allocator<N, R1, C1>,
DefaultAllocator: Allocator<N, C1, C1>,
fn mul_assign(&mut self, right: Rotation<N, C1>)
[src]
impl<N, D> MulAssign<Rotation<N, D>> for Similarity<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, rhs: Rotation<N, D>)
[src]
impl<N, D, C> MulAssign<Rotation<N, D>> for Transform<N, D, C> where
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
[src]
C: TCategory,
D: DimNameAdd<U1>,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + RealField,
DefaultAllocator: Allocator<N, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, rhs: Rotation<N, D>)
[src]
impl<N, D> MulAssign<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, right: Rotation<N, D>)
[src]
impl<N, D> MulAssign<Rotation<N, D>> for Isometry<N, D, Rotation<N, D>> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N> + SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, D, D>,
fn mul_assign(&mut self, rhs: Rotation<N, D>)
[src]
impl<N> MulAssign<Rotation<N, U2>> for Unit<Complex<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn mul_assign(&mut self, rhs: Rotation<N, U2>)
[src]
impl<N> MulAssign<Rotation<N, U3>> for Unit<Quaternion<N>> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U4, U1>,
DefaultAllocator: Allocator<N, U3, U3>,
fn mul_assign(&mut self, rhs: Rotation<N, U3>)
[src]
impl<N> MulAssign<Unit<Complex<N>>> for Rotation<N, U2> where
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
[src]
N: SimdRealField,
<N as SimdValue>::Element: SimdRealField,
DefaultAllocator: Allocator<N, U2, U2>,
fn mul_assign(&mut self, rhs: Unit<Complex<N>>)
[src]
impl<N, D> One for Rotation<N, D> where
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + Zero + One + ClosedAdd<N> + ClosedMul<N>,
DefaultAllocator: Allocator<N, D, D>,
fn one() -> Rotation<N, D>
[src]
fn set_one(&mut self)
[src]
fn is_one(&self) -> bool where
Self: PartialEq<Self>,
[src]
Self: PartialEq<Self>,
impl<N, D> PartialEq<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + PartialEq<N>,
DefaultAllocator: Allocator<N, D, D>,
[src]
D: DimName,
N: Scalar + PartialEq<N>,
DefaultAllocator: Allocator<N, D, D>,
fn eq(&self, right: &Rotation<N, D>) -> bool
[src]
#[must_use]fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl<N, D> RelativeEq<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + RelativeEq<N>,
DefaultAllocator: Allocator<N, D, D>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
[src]
D: DimName,
N: Scalar + RelativeEq<N>,
DefaultAllocator: Allocator<N, D, D>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
fn default_max_relative(
) -> <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon
[src]
) -> <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon
fn relative_eq(
&self,
other: &Rotation<N, D>,
epsilon: <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon,
max_relative: <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon
) -> bool
[src]
&self,
other: &Rotation<N, D>,
epsilon: <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::Epsilon,
max_relative: <Rotation<N, D> as AbsDiffEq<Rotation<N, D>>>::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> SimdValue for Rotation<N, D> where
D: DimName,
N: Scalar + SimdValue,
<N as SimdValue>::Element: Scalar,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
[src]
D: DimName,
N: Scalar + SimdValue,
<N as SimdValue>::Element: Scalar,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<<N as SimdValue>::Element, D, D>,
type Element = Rotation<<N as SimdValue>::Element, D>
The type of the elements of each lane of this SIMD value.
type SimdBool = <N as SimdValue>::SimdBool
Type of the result of comparing two SIMD values like self
.
fn lanes() -> usize
[src]
fn splat(val: <Rotation<N, D> as SimdValue>::Element) -> Rotation<N, D>
[src]
fn extract(&self, i: usize) -> <Rotation<N, D> as SimdValue>::Element
[src]
unsafe fn extract_unchecked(
&self,
i: usize
) -> <Rotation<N, D> as SimdValue>::Element
[src]
&self,
i: usize
) -> <Rotation<N, D> as SimdValue>::Element
fn replace(&mut self, i: usize, val: <Rotation<N, D> as SimdValue>::Element)
[src]
unsafe fn replace_unchecked(
&mut self,
i: usize,
val: <Rotation<N, D> as SimdValue>::Element
)
[src]
&mut self,
i: usize,
val: <Rotation<N, D> as SimdValue>::Element
)
fn select(
self,
cond: <Rotation<N, D> as SimdValue>::SimdBool,
other: Rotation<N, D>
) -> Rotation<N, D>
[src]
self,
cond: <Rotation<N, D> as SimdValue>::SimdBool,
other: Rotation<N, D>
) -> Rotation<N, D>
fn map_lanes(self, f: impl Fn(Self::Element) -> Self::Element) -> Self where
Self: Clone,
[src]
Self: Clone,
fn zip_map_lanes(
self,
b: Self,
f: impl Fn(Self::Element, Self::Element) -> Self::Element
) -> Self where
Self: Clone,
[src]
self,
b: Self,
f: impl Fn(Self::Element, Self::Element) -> Self::Element
) -> Self where
Self: Clone,
impl<N1, N2, D, R> SubsetOf<Isometry<N2, D, R>> for Rotation<N1, D> where
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: AbstractRotation<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: AbstractRotation<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]
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> 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 Rotation<N1, D> where
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
[src]
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
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
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>
) -> Rotation<N1, D>
[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>
) -> Rotation<N1, D>
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, D> SubsetOf<Rotation<N2, D>> for Rotation<N1, D> where
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, D>,
[src]
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, D>,
fn to_superset(&self) -> Rotation<N2, D>
[src]
fn is_in_subset(rot: &Rotation<N2, D>) -> bool
[src]
fn from_superset_unchecked(rot: &Rotation<N2, D>) -> Rotation<N1, D>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2> SubsetOf<Rotation<N2, U2>> for Unit<Complex<N1>> where
N1: RealField,
N2: RealField + SupersetOf<N1>,
[src]
N1: RealField,
N2: RealField + SupersetOf<N1>,
fn to_superset(&self) -> Rotation<N2, U2>
[src]
fn is_in_subset(rot: &Rotation<N2, U2>) -> bool
[src]
fn from_superset_unchecked(rot: &Rotation<N2, U2>) -> Unit<Complex<N1>>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2> SubsetOf<Rotation<N2, U3>> for Unit<Quaternion<N1>> where
N1: RealField,
N2: RealField + SupersetOf<N1>,
[src]
N1: RealField,
N2: RealField + SupersetOf<N1>,
fn to_superset(&self) -> Rotation<N2, U3>
[src]
fn is_in_subset(rot: &Rotation<N2, U3>) -> bool
[src]
fn from_superset_unchecked(rot: &Rotation<N2, U3>) -> Unit<Quaternion<N1>>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, D, R> SubsetOf<Similarity<N2, D, R>> for Rotation<N1, D> where
D: DimName,
N1: RealField,
N2: RealField + SupersetOf<N1>,
R: AbstractRotation<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: AbstractRotation<N2, D> + SupersetOf<Rotation<N1, D>>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, U1>,
fn to_superset(&self) -> Similarity<N2, D, R>
[src]
fn is_in_subset(sim: &Similarity<N2, D, R>) -> bool
[src]
fn from_superset_unchecked(sim: &Similarity<N2, D, R>) -> Rotation<N1, D>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2, D, C> SubsetOf<Transform<N2, D, C>> for Rotation<N1, D> where
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
[src]
C: SuperTCategoryOf<TAffine>,
D: DimNameAdd<U1> + DimMin<D, Output = D>,
N1: RealField,
N2: RealField + SupersetOf<N1>,
DefaultAllocator: Allocator<N1, D, D>,
DefaultAllocator: Allocator<N2, D, D>,
DefaultAllocator: Allocator<N1, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<N2, <D as DimNameAdd<U1>>::Output, <D as DimNameAdd<U1>>::Output>,
DefaultAllocator: Allocator<(usize, usize), D, U1>,
fn to_superset(&self) -> Transform<N2, D, C>
[src]
fn is_in_subset(t: &Transform<N2, D, C>) -> bool
[src]
fn from_superset_unchecked(t: &Transform<N2, D, C>) -> Rotation<N1, D>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2> SubsetOf<Unit<Complex<N2>>> for Rotation<N1, U2> where
N1: RealField,
N2: RealField + SupersetOf<N1>,
[src]
N1: RealField,
N2: RealField + SupersetOf<N1>,
fn to_superset(&self) -> Unit<Complex<N2>>
[src]
fn is_in_subset(q: &Unit<Complex<N2>>) -> bool
[src]
fn from_superset_unchecked(q: &Unit<Complex<N2>>) -> Rotation<N1, U2>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N1, N2> SubsetOf<Unit<Quaternion<N2>>> for Rotation<N1, U3> where
N1: RealField,
N2: RealField + SupersetOf<N1>,
[src]
N1: RealField,
N2: RealField + SupersetOf<N1>,
fn to_superset(&self) -> Unit<Quaternion<N2>>
[src]
fn is_in_subset(q: &Unit<Quaternion<N2>>) -> bool
[src]
fn from_superset_unchecked(q: &Unit<Quaternion<N2>>) -> Rotation<N1, U3>
[src]
fn from_superset(element: &T) -> Option<Self>
[src]
impl<N, D> UlpsEq<Rotation<N, D>> for Rotation<N, D> where
D: DimName,
N: Scalar + UlpsEq<N>,
DefaultAllocator: Allocator<N, D, D>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
[src]
D: DimName,
N: Scalar + UlpsEq<N>,
DefaultAllocator: Allocator<N, D, D>,
<N as AbsDiffEq<N>>::Epsilon: Copy,
Auto Trait Implementations
impl<N, D> !RefUnwindSafe for Rotation<N, D>
impl<N, D> !Send for Rotation<N, D>
impl<N, D> !Sync for Rotation<N, D>
impl<N, D> !Unpin for Rotation<N, D>
impl<N, D> !UnwindSafe for Rotation<N, D>
Blanket Implementations
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> Same<T> for T
type Output = T
Should always be Self
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]
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<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>,