Struct jumpy::core::physics::collisions::rapier::nalgebra::Similarity

source ·
#[repr(C)]
pub struct Similarity<T, R, const D: usize> { pub isometry: Isometry<T, R, D>, scaling: T, }
Expand description

A similarity, i.e., an uniform scaling, followed by a rotation, followed by a translation.

Fields§

§isometry: Isometry<T, R, D>

The part of this similarity that does not include the scaling factor.

§scaling: T

Implementations§

source§

impl<T, R, const D: usize> Similarity<T, R, D>
where T: Scalar + Zero, R: AbstractRotation<T, D>,

source

pub fn from_parts( translation: Translation<T, D>, rotation: R, scaling: T, ) -> Similarity<T, R, D>

Creates a new similarity from its rotational and translational parts.

source

pub fn from_isometry( isometry: Isometry<T, R, D>, scaling: T, ) -> Similarity<T, R, D>

Creates a new similarity from its rotational and translational parts.

source

pub fn set_scaling(&mut self, scaling: T)

The scaling factor of this similarity transformation.

source§

impl<T, R, const D: usize> Similarity<T, R, D>
where T: Scalar,

source

pub fn scaling(&self) -> T

The scaling factor of this similarity transformation.

source§

impl<T, R, const D: usize> Similarity<T, R, D>

source

pub fn from_scaling(scaling: T) -> Similarity<T, R, D>

Creates a new similarity that applies only a scaling factor.

source

pub fn inverse(&self) -> Similarity<T, R, D>

Inverts self.

source

pub fn inverse_mut(&mut self)

Inverts self in-place.

source

pub fn prepend_scaling(&self, scaling: T) -> Similarity<T, R, D>

The similarity transformation that applies a scaling factor scaling before self.

source

pub fn append_scaling(&self, scaling: T) -> Similarity<T, R, D>

The similarity transformation that applies a scaling factor scaling after self.

source

pub fn prepend_scaling_mut(&mut self, scaling: T)

Sets self to the similarity transformation that applies a scaling factor scaling before self.

source

pub fn append_scaling_mut(&mut self, scaling: T)

Sets self to the similarity transformation that applies a scaling factor scaling after self.

source

pub fn append_translation_mut(&mut self, t: &Translation<T, D>)

Appends to self the given translation in-place.

source

pub fn append_rotation_mut(&mut self, r: &R)

Appends to self the given rotation in-place.

source

pub fn append_rotation_wrt_point_mut(&mut self, r: &R, p: &OPoint<T, Const<D>>)

Appends in-place to self a rotation centered at the point p, i.e., the rotation that lets p invariant.

source

pub fn append_rotation_wrt_center_mut(&mut self, r: &R)

Appends in-place to self a rotation centered at the point with coordinates self.translation.

source

pub fn transform_point(&self, pt: &OPoint<T, Const<D>>) -> OPoint<T, Const<D>>

Transform the given point by this similarity.

This is the same as the multiplication self * pt.

§Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2;
let translation = Vector3::new(1.0, 2.0, 3.0);
let sim = Similarity3::new(translation, axisangle, 3.0);
let transformed_point = sim.transform_point(&Point3::new(4.0, 5.0, 6.0));
assert_relative_eq!(transformed_point, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
source

pub fn transform_vector( &self, v: &Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>, ) -> Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Transform the given vector by this similarity, ignoring the translational component.

This is the same as the multiplication self * t.

§Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2;
let translation = Vector3::new(1.0, 2.0, 3.0);
let sim = Similarity3::new(translation, axisangle, 3.0);
let transformed_vector = sim.transform_vector(&Vector3::new(4.0, 5.0, 6.0));
assert_relative_eq!(transformed_vector, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
source

pub fn inverse_transform_point( &self, pt: &OPoint<T, Const<D>>, ) -> OPoint<T, Const<D>>

Transform the given point by the inverse of this similarity. This may be cheaper than inverting the similarity and then transforming the given point.

§Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2;
let translation = Vector3::new(1.0, 2.0, 3.0);
let sim = Similarity3::new(translation, axisangle, 2.0);
let transformed_point = sim.inverse_transform_point(&Point3::new(4.0, 5.0, 6.0));
assert_relative_eq!(transformed_point, Point3::new(-1.5, 1.5, 1.5), epsilon = 1.0e-5);
source

pub fn inverse_transform_vector( &self, v: &Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>, ) -> Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Transform the given vector by the inverse of this similarity, ignoring the translational component. This may be cheaper than inverting the similarity and then transforming the given vector.

§Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2;
let translation = Vector3::new(1.0, 2.0, 3.0);
let sim = Similarity3::new(translation, axisangle, 2.0);
let transformed_vector = sim.inverse_transform_vector(&Vector3::new(4.0, 5.0, 6.0));
assert_relative_eq!(transformed_vector, Vector3::new(-3.0, 2.5, 2.0), epsilon = 1.0e-5);
source§

impl<T, R, const D: usize> Similarity<T, R, D>
where T: SimdRealField,

source

pub fn to_homogeneous( &self, ) -> Matrix<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>
where Const<D>: DimNameAdd<Const<1>>, R: SubsetOf<Matrix<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>>, DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>,

Converts this similarity into its equivalent homogeneous transformation matrix.

source§

impl<T, R, const D: usize> Similarity<T, R, D>

source

pub fn identity() -> Similarity<T, R, D>

Creates a new identity similarity.

§Example

let sim = Similarity2::identity();
let pt = Point2::new(1.0, 2.0);
assert_eq!(sim * pt, pt);

let sim = Similarity3::identity();
let pt = Point3::new(1.0, 2.0, 3.0);
assert_eq!(sim * pt, pt);
source§

impl<T, R, const D: usize> Similarity<T, R, D>

source

pub fn rotation_wrt_point( r: R, p: OPoint<T, Const<D>>, scaling: T, ) -> Similarity<T, R, D>

The similarity that applies the scaling factor scaling, followed by the rotation r with its axis passing through the point p.

§Example
let rot = UnitComplex::new(f32::consts::FRAC_PI_2);
let pt = Point2::new(3.0, 2.0);
let sim = Similarity2::rotation_wrt_point(rot, pt, 4.0);

assert_relative_eq!(sim * Point2::new(1.0, 2.0), Point2::new(-3.0, 3.0), epsilon = 1.0e-6);
source§

impl<T> Similarity<T, Rotation<T, 2>, 2>

source

pub fn new( translation: Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>, angle: T, scaling: T, ) -> Similarity<T, Rotation<T, 2>, 2>

Creates a new similarity from a translation, a rotation, and an uniform scaling factor.

§Example
let sim = SimilarityMatrix2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2, 3.0);

assert_relative_eq!(sim * Point2::new(2.0, 4.0), Point2::new(-11.0, 8.0), epsilon = 1.0e-6);
source

pub fn cast<To>(self) -> Similarity<To, Rotation<To, 2>, 2>
where To: Scalar, Similarity<To, Rotation<To, 2>, 2>: SupersetOf<Similarity<T, Rotation<T, 2>, 2>>,

Cast the components of self to another type.

§Example
let sim = SimilarityMatrix2::<f64>::identity();
let sim2 = sim.cast::<f32>();
assert_eq!(sim2, SimilarityMatrix2::<f32>::identity());
source§

impl<T> Similarity<T, Unit<Complex<T>>, 2>

source

pub fn new( translation: Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>, angle: T, scaling: T, ) -> Similarity<T, Unit<Complex<T>>, 2>

Creates a new similarity from a translation and a rotation angle.

§Example
let sim = Similarity2::new(Vector2::new(1.0, 2.0), f32::consts::FRAC_PI_2, 3.0);

assert_relative_eq!(sim * Point2::new(2.0, 4.0), Point2::new(-11.0, 8.0), epsilon = 1.0e-6);
source

pub fn cast<To>(self) -> Similarity<To, Unit<Complex<To>>, 2>
where To: Scalar, Similarity<To, Unit<Complex<To>>, 2>: SupersetOf<Similarity<T, Unit<Complex<T>>, 2>>,

Cast the components of self to another type.

§Example
let sim = Similarity2::<f64>::identity();
let sim2 = sim.cast::<f32>();
assert_eq!(sim2, Similarity2::<f32>::identity());
source§

impl<T> Similarity<T, Rotation<T, 3>, 3>

source

pub fn new( translation: Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, axisangle: Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Rotation<T, 3>, 3>

Creates a new similarity from a translation, rotation axis-angle, and scaling factor.

§Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2;
let translation = Vector3::new(1.0, 2.0, 3.0);
// Point and vector being transformed in the tests.
let pt = Point3::new(4.0, 5.0, 6.0);
let vec = Vector3::new(4.0, 5.0, 6.0);

// Similarity with its rotation part represented as a UnitQuaternion
let sim = Similarity3::new(translation, axisangle, 3.0);
assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);

// Similarity with its rotation part represented as a Rotation3 (a 3x3 rotation matrix).
let sim = SimilarityMatrix3::new(translation, axisangle, 3.0);
assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
source

pub fn cast<To>(self) -> Similarity<To, Rotation<To, 3>, 3>
where To: Scalar, Similarity<To, Rotation<To, 3>, 3>: SupersetOf<Similarity<T, Rotation<T, 3>, 3>>,

Cast the components of self to another type.

§Example
let sim = Similarity3::<f64>::identity();
let sim2 = sim.cast::<f32>();
assert_eq!(sim2, Similarity3::<f32>::identity());
source

pub fn face_towards( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Rotation<T, 3>, 3>

Creates an similarity that corresponds to a scaling factor and a local frame of an observer standing at the point eye and looking toward target.

It maps the view direction target - eye to the positive z axis and the origin to the eye.

§Arguments
  • eye - The observer position.
  • target - The target position.
  • up - Vertical direction. The only requirement of this parameter is to not be collinear to eye - at. Non-collinearity is not checked.
§Example
let eye = Point3::new(1.0, 2.0, 3.0);
let target = Point3::new(2.0, 2.0, 3.0);
let up = Vector3::y();

// Similarity with its rotation part represented as a UnitQuaternion
let sim = Similarity3::face_towards(&eye, &target, &up, 3.0);
assert_eq!(sim * Point3::origin(), eye);
assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);

// Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix).
let sim = SimilarityMatrix3::face_towards(&eye, &target, &up, 3.0);
assert_eq!(sim * Point3::origin(), eye);
assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);
source

pub fn new_observer_frames( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Rotation<T, 3>, 3>

👎Deprecated: renamed to face_towards

Deprecated: Use SimilarityMatrix3::face_towards instead.

source

pub fn look_at_rh( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Rotation<T, 3>, 3>

Builds a right-handed look-at view matrix including scaling factor.

This conforms to the common notion of right handed look-at matrix from the computer graphics community.

§Arguments
  • eye - The eye position.
  • target - The target position.
  • up - A vector approximately aligned with required the vertical axis. The only requirement of this parameter is to not be collinear to target - eye.
§Example
let eye = Point3::new(1.0, 2.0, 3.0);
let target = Point3::new(2.0, 2.0, 3.0);
let up = Vector3::y();

// Similarity with its rotation part represented as a UnitQuaternion
let iso = Similarity3::look_at_rh(&eye, &target, &up, 3.0);
assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);

// Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix).
let iso = SimilarityMatrix3::look_at_rh(&eye, &target, &up, 3.0);
assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);
source

pub fn look_at_lh( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Rotation<T, 3>, 3>

Builds a left-handed look-at view matrix including a scaling factor.

This conforms to the common notion of left handed look-at matrix from the computer graphics community.

§Arguments
  • eye - The eye position.
  • target - The target position.
  • up - A vector approximately aligned with required the vertical axis. The only requirement of this parameter is to not be collinear to target - eye.
§Example
let eye = Point3::new(1.0, 2.0, 3.0);
let target = Point3::new(2.0, 2.0, 3.0);
let up = Vector3::y();

// Similarity with its rotation part represented as a UnitQuaternion
let sim = Similarity3::look_at_lh(&eye, &target, &up, 3.0);
assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);

// Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix).
let sim = SimilarityMatrix3::look_at_lh(&eye, &target, &up, 3.0);
assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);
source§

impl<T> Similarity<T, Unit<Quaternion<T>>, 3>

source

pub fn new( translation: Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, axisangle: Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Unit<Quaternion<T>>, 3>

Creates a new similarity from a translation, rotation axis-angle, and scaling factor.

§Example
let axisangle = Vector3::y() * f32::consts::FRAC_PI_2;
let translation = Vector3::new(1.0, 2.0, 3.0);
// Point and vector being transformed in the tests.
let pt = Point3::new(4.0, 5.0, 6.0);
let vec = Vector3::new(4.0, 5.0, 6.0);

// Similarity with its rotation part represented as a UnitQuaternion
let sim = Similarity3::new(translation, axisangle, 3.0);
assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);

// Similarity with its rotation part represented as a Rotation3 (a 3x3 rotation matrix).
let sim = SimilarityMatrix3::new(translation, axisangle, 3.0);
assert_relative_eq!(sim * pt, Point3::new(19.0, 17.0, -9.0), epsilon = 1.0e-5);
assert_relative_eq!(sim * vec, Vector3::new(18.0, 15.0, -12.0), epsilon = 1.0e-5);
source

pub fn cast<To>(self) -> Similarity<To, Unit<Quaternion<To>>, 3>
where To: Scalar, Similarity<To, Unit<Quaternion<To>>, 3>: SupersetOf<Similarity<T, Unit<Quaternion<T>>, 3>>,

Cast the components of self to another type.

§Example
let sim = Similarity3::<f64>::identity();
let sim2 = sim.cast::<f32>();
assert_eq!(sim2, Similarity3::<f32>::identity());
source

pub fn face_towards( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Unit<Quaternion<T>>, 3>

Creates an similarity that corresponds to a scaling factor and a local frame of an observer standing at the point eye and looking toward target.

It maps the view direction target - eye to the positive z axis and the origin to the eye.

§Arguments
  • eye - The observer position.
  • target - The target position.
  • up - Vertical direction. The only requirement of this parameter is to not be collinear to eye - at. Non-collinearity is not checked.
§Example
let eye = Point3::new(1.0, 2.0, 3.0);
let target = Point3::new(2.0, 2.0, 3.0);
let up = Vector3::y();

// Similarity with its rotation part represented as a UnitQuaternion
let sim = Similarity3::face_towards(&eye, &target, &up, 3.0);
assert_eq!(sim * Point3::origin(), eye);
assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);

// Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix).
let sim = SimilarityMatrix3::face_towards(&eye, &target, &up, 3.0);
assert_eq!(sim * Point3::origin(), eye);
assert_relative_eq!(sim * Vector3::z(), Vector3::x() * 3.0, epsilon = 1.0e-6);
source

pub fn new_observer_frames( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Unit<Quaternion<T>>, 3>

👎Deprecated: renamed to face_towards

Deprecated: Use SimilarityMatrix3::face_towards instead.

source

pub fn look_at_rh( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Unit<Quaternion<T>>, 3>

Builds a right-handed look-at view matrix including scaling factor.

This conforms to the common notion of right handed look-at matrix from the computer graphics community.

§Arguments
  • eye - The eye position.
  • target - The target position.
  • up - A vector approximately aligned with required the vertical axis. The only requirement of this parameter is to not be collinear to target - eye.
§Example
let eye = Point3::new(1.0, 2.0, 3.0);
let target = Point3::new(2.0, 2.0, 3.0);
let up = Vector3::y();

// Similarity with its rotation part represented as a UnitQuaternion
let iso = Similarity3::look_at_rh(&eye, &target, &up, 3.0);
assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);

// Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix).
let iso = SimilarityMatrix3::look_at_rh(&eye, &target, &up, 3.0);
assert_relative_eq!(iso * Vector3::x(), -Vector3::z() * 3.0, epsilon = 1.0e-6);
source

pub fn look_at_lh( eye: &OPoint<T, Const<3>>, target: &OPoint<T, Const<3>>, up: &Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>, scaling: T, ) -> Similarity<T, Unit<Quaternion<T>>, 3>

Builds a left-handed look-at view matrix including a scaling factor.

This conforms to the common notion of left handed look-at matrix from the computer graphics community.

§Arguments
  • eye - The eye position.
  • target - The target position.
  • up - A vector approximately aligned with required the vertical axis. The only requirement of this parameter is to not be collinear to target - eye.
§Example
let eye = Point3::new(1.0, 2.0, 3.0);
let target = Point3::new(2.0, 2.0, 3.0);
let up = Vector3::y();

// Similarity with its rotation part represented as a UnitQuaternion
let sim = Similarity3::look_at_lh(&eye, &target, &up, 3.0);
assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);

// Similarity with its rotation part represented as Rotation3 (a 3x3 rotation matrix).
let sim = SimilarityMatrix3::look_at_lh(&eye, &target, &up, 3.0);
assert_relative_eq!(sim * Vector3::x(), Vector3::z() * 3.0, epsilon = 1.0e-6);

Trait Implementations§

source§

impl<T, R, const D: usize> AbsDiffEq for Similarity<T, R, D>
where T: RealField, R: AbstractRotation<T, D> + AbsDiffEq<Epsilon = <T as AbsDiffEq>::Epsilon>, <T as AbsDiffEq>::Epsilon: Clone,

§

type Epsilon = <T as AbsDiffEq>::Epsilon

Used for specifying relative comparisons.
source§

fn default_epsilon() -> <Similarity<T, R, D> as AbsDiffEq>::Epsilon

The default tolerance to use when testing values that are close together. Read more
source§

fn abs_diff_eq( &self, other: &Similarity<T, R, D>, epsilon: <Similarity<T, R, D> as AbsDiffEq>::Epsilon, ) -> bool

A test for equality that uses the absolute difference to compute the approximate equality of two numbers.
§

fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool

The inverse of [AbsDiffEq::abs_diff_eq].
source§

impl<T, R, const D: usize> Clone for Similarity<T, R, D>
where T: Clone, R: Clone,

source§

fn clone(&self) -> Similarity<T, R, D>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T, R, const D: usize> Debug for Similarity<T, R, D>
where T: Debug, R: Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl<T, R, const D: usize> Default for Similarity<T, R, D>

source§

fn default() -> Similarity<T, R, D>

Returns the “default value” for a type. Read more
source§

impl<T, R, const D: usize> Display for Similarity<T, R, D>
where T: RealField + Display, R: AbstractRotation<T, D> + Display,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl<'a, 'b, T, R, const D: usize> Div<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Isometry<T, R, D>, ) -> <&'a Similarity<T, R, D> as Div<&'b Isometry<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'b, T, R, const D: usize> Div<&'b Isometry<T, R, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Isometry<T, R, D>, ) -> <Similarity<T, R, D> as Div<&'b Isometry<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T, const D: usize> Div<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Rotation<T, D>, ) -> <&'a Similarity<T, Rotation<T, D>, D> as Div<&'b Rotation<T, D>>>::Output

Performs the / operation. Read more
source§

impl<'b, T, const D: usize> Div<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Rotation<T, D>, ) -> <Similarity<T, Rotation<T, D>, D> as Div<&'b Rotation<T, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Similarity<T, R, D>, ) -> <&'a Isometry<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Similarity<T, R, D>, ) -> <&'a Similarity<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Similarity<T, R, D>, ) -> <Isometry<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'b, T, R, const D: usize> Div<&'b Similarity<T, R, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Similarity<T, R, D>, ) -> <Similarity<T, R, D> as Div<&'b Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, right: &'b Similarity<T, Rotation<T, D>, D>, ) -> <&'a Rotation<T, D> as Div<&'b Similarity<T, Rotation<T, D>, D>>>::Output

Performs the / operation. Read more
source§

impl<'b, T, const D: usize> Div<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, right: &'b Similarity<T, Rotation<T, D>, D>, ) -> <Rotation<T, D> as Div<&'b Similarity<T, Rotation<T, D>, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, right: &'b Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <&'a Unit<Quaternion<T>> as Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the / operation. Read more
source§

impl<'b, T> Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, right: &'b Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <Unit<Quaternion<T>> as Div<&'b Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T> Div<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Unit<Complex<T>>, ) -> <&'a Similarity<T, Unit<Complex<T>>, 2> as Div<&'b Unit<Complex<T>>>>::Output

Performs the / operation. Read more
source§

impl<'b, T> Div<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Unit<Complex<T>>, ) -> <Similarity<T, Unit<Complex<T>>, 2> as Div<&'b Unit<Complex<T>>>>::Output

Performs the / operation. Read more
source§

impl<'a, 'b, T> Div<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Unit<Quaternion<T>>, ) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3> as Div<&'b Unit<Quaternion<T>>>>::Output

Performs the / operation. Read more
source§

impl<'b, T> Div<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, rhs: &'b Unit<Quaternion<T>>, ) -> <Similarity<T, Unit<Quaternion<T>>, 3> as Div<&'b Unit<Quaternion<T>>>>::Output

Performs the / operation. Read more
source§

impl<'a, T, R, const D: usize> Div<Isometry<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Isometry<T, R, D>, ) -> <&'a Similarity<T, R, D> as Div<Isometry<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<T, R, const D: usize> Div<Isometry<T, R, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Isometry<T, R, D>, ) -> <Similarity<T, R, D> as Div<Isometry<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, T, const D: usize> Div<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Rotation<T, D>, ) -> <&'a Similarity<T, Rotation<T, D>, D> as Div<Rotation<T, D>>>::Output

Performs the / operation. Read more
source§

impl<T, const D: usize> Div<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Rotation<T, D>, ) -> <Similarity<T, Rotation<T, D>, D> as Div<Rotation<T, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, T, R, const D: usize> Div<Similarity<T, R, D>> for &'a Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Similarity<T, R, D>, ) -> <&'a Isometry<T, R, D> as Div<Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, T, R, const D: usize> Div<Similarity<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Similarity<T, R, D>, ) -> <&'a Similarity<T, R, D> as Div<Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<T, R, const D: usize> Div<Similarity<T, R, D>> for Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Similarity<T, R, D>, ) -> <Isometry<T, R, D> as Div<Similarity<T, R, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, T, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, right: Similarity<T, Rotation<T, D>, D>, ) -> <&'a Rotation<T, D> as Div<Similarity<T, Rotation<T, D>, D>>>::Output

Performs the / operation. Read more
source§

impl<T, const D: usize> Div<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the / operator.
source§

fn div( self, right: Similarity<T, Rotation<T, D>, D>, ) -> <Rotation<T, D> as Div<Similarity<T, Rotation<T, D>, D>>>::Output

Performs the / operation. Read more
source§

impl<'a, T> Div<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, right: Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <&'a Unit<Quaternion<T>> as Div<Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the / operation. Read more
source§

impl<T> Div<Similarity<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, right: Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <Unit<Quaternion<T>> as Div<Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the / operation. Read more
source§

impl<'a, T> Div<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Unit<Complex<T>>, ) -> <&'a Similarity<T, Unit<Complex<T>>, 2> as Div<Unit<Complex<T>>>>::Output

Performs the / operation. Read more
source§

impl<T> Div<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Unit<Complex<T>>, ) -> <Similarity<T, Unit<Complex<T>>, 2> as Div<Unit<Complex<T>>>>::Output

Performs the / operation. Read more
source§

impl<'a, T> Div<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Unit<Quaternion<T>>, ) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3> as Div<Unit<Quaternion<T>>>>::Output

Performs the / operation. Read more
source§

impl<T> Div<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the / operator.
source§

fn div( self, rhs: Unit<Quaternion<T>>, ) -> <Similarity<T, Unit<Quaternion<T>>, 3> as Div<Unit<Quaternion<T>>>>::Output

Performs the / operation. Read more
source§

impl<T, R, const D: usize> Div for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the / operator.
source§

fn div(self, rhs: Similarity<T, R, D>) -> <Similarity<T, R, D> as Div>::Output

Performs the / operation. Read more
source§

impl<'b, T, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D>

source§

fn div_assign(&mut self, rhs: &'b Isometry<T, R, D>)

Performs the /= operation. Read more
source§

impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

source§

fn div_assign(&mut self, rhs: &'b Rotation<T, D>)

Performs the /= operation. Read more
source§

impl<'b, T, R, const D: usize> DivAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D>

source§

fn div_assign(&mut self, rhs: &'b Similarity<T, R, D>)

Performs the /= operation. Read more
source§

impl<'b, T> DivAssign<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

source§

fn div_assign(&mut self, rhs: &'b Unit<Complex<T>>)

Performs the /= operation. Read more
source§

impl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

source§

fn div_assign(&mut self, rhs: &'b Unit<Quaternion<T>>)

Performs the /= operation. Read more
source§

impl<T, R, const D: usize> DivAssign<Isometry<T, R, D>> for Similarity<T, R, D>

source§

fn div_assign(&mut self, rhs: Isometry<T, R, D>)

Performs the /= operation. Read more
source§

impl<T, const D: usize> DivAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

source§

fn div_assign(&mut self, rhs: Rotation<T, D>)

Performs the /= operation. Read more
source§

impl<T> DivAssign<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

source§

fn div_assign(&mut self, rhs: Unit<Complex<T>>)

Performs the /= operation. Read more
source§

impl<T> DivAssign<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

source§

fn div_assign(&mut self, rhs: Unit<Quaternion<T>>)

Performs the /= operation. Read more
source§

impl<T, R, const D: usize> DivAssign for Similarity<T, R, D>

source§

fn div_assign(&mut self, rhs: Similarity<T, R, D>)

Performs the /= operation. Read more
source§

impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16]> for Similarity<T, R, D>
where T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 16]>, R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 16]>, <R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D> + Scalar + Zero + Copy, <T as SimdValue>::Element: Scalar + Zero + Copy,

source§

fn from( arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 16], ) -> Similarity<T, R, D>

Converts to this type from the input type.
source§

impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2]> for Similarity<T, R, D>
where T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 2]>, R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 2]>, <R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D> + Scalar + Zero + Copy, <T as SimdValue>::Element: Scalar + Zero + Copy,

source§

fn from( arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 2], ) -> Similarity<T, R, D>

Converts to this type from the input type.
source§

impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4]> for Similarity<T, R, D>
where T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 4]>, R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 4]>, <R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D> + Scalar + Zero + Copy, <T as SimdValue>::Element: Scalar + Zero + Copy,

source§

fn from( arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 4], ) -> Similarity<T, R, D>

Converts to this type from the input type.
source§

impl<T, R, const D: usize> From<[Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8]> for Similarity<T, R, D>
where T: Scalar + Zero + PrimitiveSimdValue + From<[<T as SimdValue>::Element; 8]>, R: SimdValue + AbstractRotation<T, D> + From<[<R as SimdValue>::Element; 8]>, <R as SimdValue>::Element: AbstractRotation<<T as SimdValue>::Element, D> + Scalar + Zero + Copy, <T as SimdValue>::Element: Scalar + Zero + Copy,

source§

fn from( arr: [Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>; 8], ) -> Similarity<T, R, D>

Converts to this type from the input type.
source§

impl<T, R, const D: usize> From<Similarity<T, R, D>> for Matrix<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>
where T: SimdRealField, Const<D>: DimNameAdd<Const<1>>, R: SubsetOf<Matrix<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>>, DefaultAllocator: Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>,

source§

fn from( sim: Similarity<T, R, D>, ) -> Matrix<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>

Converts to this type from the input type.
source§

impl From<Similarity<f32, Unit<Complex<f32>>, 2>> for Mat3

source§

fn from(iso: Similarity<f32, Unit<Complex<f32>>, 2>) -> Mat3

Converts to this type from the input type.
source§

impl From<Similarity<f32, Unit<Quaternion<f32>>, 3>> for Mat4

source§

fn from(iso: Similarity<f32, Unit<Quaternion<f32>>, 3>) -> Mat4

Converts to this type from the input type.
source§

impl From<Similarity<f64, Unit<Complex<f64>>, 2>> for DMat3

source§

fn from(iso: Similarity<f64, Unit<Complex<f64>>, 2>) -> DMat3

Converts to this type from the input type.
source§

impl From<Similarity<f64, Unit<Quaternion<f64>>, 3>> for DMat4

source§

fn from(iso: Similarity<f64, Unit<Quaternion<f64>>, 3>) -> DMat4

Converts to this type from the input type.
source§

impl<T, R, const D: usize> Hash for Similarity<T, R, D>
where T: Scalar + Hash, R: Hash, <DefaultAllocator as Allocator<T, Const<D>>>::Buffer: Hash,

source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Isometry<T, R, D>, ) -> <&'a Similarity<T, R, D> as Mul<&'b Isometry<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Isometry<T, R, D>, ) -> <Similarity<T, R, D> as Mul<&'b Isometry<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D>

§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>, ) -> <&'a Similarity<T, R, D> as Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D>

§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>, ) -> <Similarity<T, R, D> as Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Similarity<T, R, D>

§

type Output = OPoint<T, Const<D>>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b OPoint<T, Const<D>>, ) -> <&'a Similarity<T, R, D> as Mul<&'b OPoint<T, Const<D>>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Similarity<T, R, D>

§

type Output = OPoint<T, Const<D>>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b OPoint<T, Const<D>>, ) -> <Similarity<T, R, D> as Mul<&'b OPoint<T, Const<D>>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Rotation<T, D>, ) -> <&'a Similarity<T, Rotation<T, D>, D> as Mul<&'b Rotation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Rotation<T, D>, ) -> <Similarity<T, Rotation<T, D>, D> as Mul<&'b Rotation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, R, D>, ) -> <&'a Isometry<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, R, D>, ) -> <&'a Similarity<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Transform<T, C, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, R, D>, ) -> <&'a Transform<T, C, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Similarity<T, R, D>, ) -> <&'a Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, R, D>, ) -> <Isometry<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, R, D>, ) -> <Similarity<T, R, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Transform<T, C, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, R, D>, ) -> <Transform<T, C, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Similarity<T, R, D>, ) -> <Translation<T, D> as Mul<&'b Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Similarity<T, Rotation<T, D>, D>, ) -> <&'a Rotation<T, D> as Mul<&'b Similarity<T, Rotation<T, D>, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Similarity<T, Rotation<T, D>, D>, ) -> <Rotation<T, D> as Mul<&'b Similarity<T, Rotation<T, D>, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for &'a Unit<Complex<T>>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, Unit<Complex<T>>, 2>, ) -> <&'a Unit<Complex<T>> as Mul<&'b Similarity<T, Unit<Complex<T>>, 2>>>::Output

Performs the * operation. Read more
source§

impl<'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for Unit<Complex<T>>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Similarity<T, Unit<Complex<T>>, 2>, ) -> <Unit<Complex<T>> as Mul<&'b Similarity<T, Unit<Complex<T>>, 2>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <&'a Unit<Quaternion<T>> as Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the * operation. Read more
source§

impl<'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <Unit<Quaternion<T>> as Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Similarity<T, R, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Transform<T, C, D>, ) -> <&'a Similarity<T, R, D> as Mul<&'b Transform<T, C, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Similarity<T, R, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Transform<T, C, D>, ) -> <Similarity<T, R, D> as Mul<&'b Transform<T, C, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Translation<T, D>, ) -> <&'a Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: &'b Translation<T, D>, ) -> <Similarity<T, R, D> as Mul<&'b Translation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Unit<Complex<T>>, ) -> <&'a Similarity<T, Unit<Complex<T>>, 2> as Mul<&'b Unit<Complex<T>>>>::Output

Performs the * operation. Read more
source§

impl<'b, T> Mul<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Unit<Complex<T>>, ) -> <Similarity<T, Unit<Complex<T>>, 2> as Mul<&'b Unit<Complex<T>>>>::Output

Performs the * operation. Read more
source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Unit<Quaternion<T>>, ) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3> as Mul<&'b Unit<Quaternion<T>>>>::Output

Performs the * operation. Read more
source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: &'b Unit<Quaternion<T>>, ) -> <Similarity<T, Unit<Quaternion<T>>, 3> as Mul<&'b Unit<Quaternion<T>>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Isometry<T, R, D>, ) -> <&'a Similarity<T, R, D> as Mul<Isometry<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Isometry<T, R, D>, ) -> <Similarity<T, R, D> as Mul<Isometry<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D>

§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

The resulting type after applying the * operator.
source§

fn mul( self, right: Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>, ) -> <&'a Similarity<T, R, D> as Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D>

§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

The resulting type after applying the * operator.
source§

fn mul( self, right: Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>, ) -> <Similarity<T, R, D> as Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Similarity<T, R, D>

§

type Output = OPoint<T, Const<D>>

The resulting type after applying the * operator.
source§

fn mul( self, right: OPoint<T, Const<D>>, ) -> <&'a Similarity<T, R, D> as Mul<OPoint<T, Const<D>>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul<OPoint<T, Const<D>>> for Similarity<T, R, D>

§

type Output = OPoint<T, Const<D>>

The resulting type after applying the * operator.
source§

fn mul( self, right: OPoint<T, Const<D>>, ) -> <Similarity<T, R, D> as Mul<OPoint<T, Const<D>>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Rotation<T, D>, ) -> <&'a Similarity<T, Rotation<T, D>, D> as Mul<Rotation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<T, const D: usize> Mul<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Rotation<T, D>, ) -> <Similarity<T, Rotation<T, D>, D> as Mul<Rotation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, R, D>, ) -> <&'a Isometry<T, R, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, R, D>, ) -> <&'a Similarity<T, R, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, C, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Transform<T, C, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, R, D>, ) -> <&'a Transform<T, C, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: Similarity<T, R, D>, ) -> <&'a Translation<T, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Isometry<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, R, D>, ) -> <Isometry<T, R, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<T, C, R, const D: usize> Mul<Similarity<T, R, D>> for Transform<T, C, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, R, D>, ) -> <Transform<T, C, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: Similarity<T, R, D>, ) -> <Translation<T, D> as Mul<Similarity<T, R, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: Similarity<T, Rotation<T, D>, D>, ) -> <&'a Rotation<T, D> as Mul<Similarity<T, Rotation<T, D>, D>>>::Output

Performs the * operation. Read more
source§

impl<T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D>

§

type Output = Similarity<T, Rotation<T, D>, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: Similarity<T, Rotation<T, D>, D>, ) -> <Rotation<T, D> as Mul<Similarity<T, Rotation<T, D>, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T> Mul<Similarity<T, Unit<Complex<T>>, 2>> for &'a Unit<Complex<T>>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, Unit<Complex<T>>, 2>, ) -> <&'a Unit<Complex<T>> as Mul<Similarity<T, Unit<Complex<T>>, 2>>>::Output

Performs the * operation. Read more
source§

impl<T> Mul<Similarity<T, Unit<Complex<T>>, 2>> for Unit<Complex<T>>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Similarity<T, Unit<Complex<T>>, 2>, ) -> <Unit<Complex<T>> as Mul<Similarity<T, Unit<Complex<T>>, 2>>>::Output

Performs the * operation. Read more
source§

impl<'a, T> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, right: Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <&'a Unit<Quaternion<T>> as Mul<Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the * operation. Read more
source§

impl<T> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, right: Similarity<T, Unit<Quaternion<T>>, 3>, ) -> <Unit<Quaternion<T>> as Mul<Similarity<T, Unit<Quaternion<T>>, 3>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, C, R, const D: usize> Mul<Transform<T, C, D>> for &'a Similarity<T, R, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Transform<T, C, D>, ) -> <&'a Similarity<T, R, D> as Mul<Transform<T, C, D>>>::Output

Performs the * operation. Read more
source§

impl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Similarity<T, R, D>

§

type Output = Transform<T, <C as TCategoryMul<TAffine>>::Representative, D>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Transform<T, C, D>, ) -> <Similarity<T, R, D> as Mul<Transform<T, C, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: Translation<T, D>, ) -> <&'a Similarity<T, R, D> as Mul<Translation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul( self, right: Translation<T, D>, ) -> <Similarity<T, R, D> as Mul<Translation<T, D>>>::Output

Performs the * operation. Read more
source§

impl<'a, T> Mul<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Unit<Complex<T>>, ) -> <&'a Similarity<T, Unit<Complex<T>>, 2> as Mul<Unit<Complex<T>>>>::Output

Performs the * operation. Read more
source§

impl<T> Mul<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

§

type Output = Similarity<T, Unit<Complex<T>>, 2>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Unit<Complex<T>>, ) -> <Similarity<T, Unit<Complex<T>>, 2> as Mul<Unit<Complex<T>>>>::Output

Performs the * operation. Read more
source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Unit<Quaternion<T>>, ) -> <&'a Similarity<T, Unit<Quaternion<T>>, 3> as Mul<Unit<Quaternion<T>>>>::Output

Performs the * operation. Read more
source§

impl<T> Mul<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

§

type Output = Similarity<T, Unit<Quaternion<T>>, 3>

The resulting type after applying the * operator.
source§

fn mul( self, rhs: Unit<Quaternion<T>>, ) -> <Similarity<T, Unit<Quaternion<T>>, 3> as Mul<Unit<Quaternion<T>>>>::Output

Performs the * operation. Read more
source§

impl<T, R, const D: usize> Mul for Similarity<T, R, D>

§

type Output = Similarity<T, R, D>

The resulting type after applying the * operator.
source§

fn mul(self, rhs: Similarity<T, R, D>) -> <Similarity<T, R, D> as Mul>::Output

Performs the * operation. Read more
source§

impl<'b, T, R, const D: usize> MulAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D>

source§

fn mul_assign(&mut self, rhs: &'b Isometry<T, R, D>)

Performs the *= operation. Read more
source§

impl<'b, T, const D: usize> MulAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

source§

fn mul_assign(&mut self, rhs: &'b Rotation<T, D>)

Performs the *= operation. Read more
source§

impl<'b, T, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D>

source§

fn mul_assign(&mut self, rhs: &'b Similarity<T, R, D>)

Performs the *= operation. Read more
source§

impl<'b, T, C, R, const D: usize> MulAssign<&'b Similarity<T, R, D>> for Transform<T, C, D>

source§

fn mul_assign(&mut self, rhs: &'b Similarity<T, R, D>)

Performs the *= operation. Read more
source§

impl<'b, T, R, const D: usize> MulAssign<&'b Translation<T, D>> for Similarity<T, R, D>

source§

fn mul_assign(&mut self, rhs: &'b Translation<T, D>)

Performs the *= operation. Read more
source§

impl<'b, T> MulAssign<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

source§

fn mul_assign(&mut self, rhs: &'b Unit<Complex<T>>)

Performs the *= operation. Read more
source§

impl<'b, T> MulAssign<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

source§

fn mul_assign(&mut self, rhs: &'b Unit<Quaternion<T>>)

Performs the *= operation. Read more
source§

impl<T, R, const D: usize> MulAssign<Isometry<T, R, D>> for Similarity<T, R, D>

source§

fn mul_assign(&mut self, rhs: Isometry<T, R, D>)

Performs the *= operation. Read more
source§

impl<T, const D: usize> MulAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

source§

fn mul_assign(&mut self, rhs: Rotation<T, D>)

Performs the *= operation. Read more
source§

impl<T, C, R, const D: usize> MulAssign<Similarity<T, R, D>> for Transform<T, C, D>

source§

fn mul_assign(&mut self, rhs: Similarity<T, R, D>)

Performs the *= operation. Read more
source§

impl<T, R, const D: usize> MulAssign<Translation<T, D>> for Similarity<T, R, D>

source§

fn mul_assign(&mut self, rhs: Translation<T, D>)

Performs the *= operation. Read more
source§

impl<T> MulAssign<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

source§

fn mul_assign(&mut self, rhs: Unit<Complex<T>>)

Performs the *= operation. Read more
source§

impl<T> MulAssign<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

source§

fn mul_assign(&mut self, rhs: Unit<Quaternion<T>>)

Performs the *= operation. Read more
source§

impl<T, R, const D: usize> MulAssign for Similarity<T, R, D>

source§

fn mul_assign(&mut self, rhs: Similarity<T, R, D>)

Performs the *= operation. Read more
source§

impl<T, R, const D: usize> One for Similarity<T, R, D>

source§

fn one() -> Similarity<T, R, D>

Creates a new identity similarity.

source§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
source§

fn is_one(&self) -> bool
where Self: PartialEq,

Returns true if self is equal to the multiplicative identity. Read more
source§

impl<T, R, const D: usize> PartialEq for Similarity<T, R, D>

source§

fn eq(&self, right: &Similarity<T, R, D>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<T, R, const D: usize> RelativeEq for Similarity<T, R, D>
where T: RealField, R: AbstractRotation<T, D> + RelativeEq<Epsilon = <T as AbsDiffEq>::Epsilon>, <T as AbsDiffEq>::Epsilon: Clone,

source§

fn default_max_relative() -> <Similarity<T, R, D> as AbsDiffEq>::Epsilon

The default relative tolerance for testing values that are far-apart. Read more
source§

fn relative_eq( &self, other: &Similarity<T, R, D>, epsilon: <Similarity<T, R, D> as AbsDiffEq>::Epsilon, max_relative: <Similarity<T, R, D> as AbsDiffEq>::Epsilon, ) -> bool

A test for equality that uses a relative comparison if the values are far apart.
§

fn relative_ne( &self, other: &Rhs, epsilon: Self::Epsilon, max_relative: Self::Epsilon, ) -> bool

The inverse of [RelativeEq::relative_eq].
source§

impl<T, R, const D: usize> SimdValue for Similarity<T, R, D>

§

type Element = Similarity<<T as SimdValue>::Element, <R as SimdValue>::Element, D>

The type of the elements of each lane of this SIMD value.
§

type SimdBool = <T as SimdValue>::SimdBool

Type of the result of comparing two SIMD values like self.
source§

fn lanes() -> usize

The number of lanes of this SIMD value.
source§

fn splat( val: <Similarity<T, R, D> as SimdValue>::Element, ) -> Similarity<T, R, D>

Initializes an SIMD value with each lanes set to val.
source§

fn extract(&self, i: usize) -> <Similarity<T, R, D> as SimdValue>::Element

Extracts the i-th lane of self. Read more
source§

unsafe fn extract_unchecked( &self, i: usize, ) -> <Similarity<T, R, D> as SimdValue>::Element

Extracts the i-th lane of self without bound-checking.
source§

fn replace( &mut self, i: usize, val: <Similarity<T, R, D> as SimdValue>::Element, )

Replaces the i-th lane of self by val. Read more
source§

unsafe fn replace_unchecked( &mut self, i: usize, val: <Similarity<T, R, D> as SimdValue>::Element, )

Replaces the i-th lane of self by val without bound-checking.
source§

fn select( self, cond: <Similarity<T, R, D> as SimdValue>::SimdBool, other: Similarity<T, R, D>, ) -> Similarity<T, R, D>

Merges self and other depending on the lanes of cond. Read more
§

fn map_lanes(self, f: impl Fn(Self::Element) -> Self::Element) -> Self
where Self: Clone,

Applies a function to each lane of self. Read more
§

fn zip_map_lanes( self, b: Self, f: impl Fn(Self::Element, Self::Element) -> Self::Element, ) -> Self
where Self: Clone,

Applies a function to each lane of self paired with the corresponding lane of b. Read more
source§

impl<T1, T2, R, const D: usize> SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>> for Similarity<T1, R, D>
where T1: RealField, T2: RealField + SupersetOf<T1>, R: AbstractRotation<T1, D> + SubsetOf<Matrix<T1, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T1, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>> + SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>>, Const<D>: DimNameAdd<Const<1>> + DimMin<Const<D>, Output = Const<D>>, DefaultAllocator: Allocator<T1, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output> + Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>,

source§

fn to_superset( &self, ) -> Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset( m: &Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>, ) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked( m: &Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>, ) -> Similarity<T1, R, D>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R> SubsetOf<Similarity<T2, R, 2>> for Unit<Complex<T1>>
where T1: RealField, T2: RealField + SupersetOf<T1>, R: AbstractRotation<T2, 2> + SupersetOf<Unit<Complex<T1>>>,

source§

fn to_superset(&self) -> Similarity<T2, R, 2>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, R, 2>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(sim: &Similarity<T2, R, 2>) -> Unit<Complex<T1>>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R> SubsetOf<Similarity<T2, R, 3>> for Unit<Quaternion<T1>>
where T1: RealField, T2: RealField + SupersetOf<T1>, R: AbstractRotation<T2, 3> + SupersetOf<Unit<Quaternion<T1>>>,

source§

fn to_superset(&self) -> Similarity<T2, R, 3>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, R, 3>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(sim: &Similarity<T2, R, 3>) -> Unit<Quaternion<T1>>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Rotation<T1, D>
where T1: RealField, T2: RealField + SupersetOf<T1>, R: AbstractRotation<T2, D> + SupersetOf<Rotation<T1, D>>,

source§

fn to_superset(&self) -> Similarity<T2, R, D>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, R, D>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(sim: &Similarity<T2, R, D>) -> Rotation<T1, D>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R, const D: usize> SubsetOf<Similarity<T2, R, D>> for Translation<T1, D>
where T1: RealField, T2: RealField + SupersetOf<T1>, R: AbstractRotation<T2, D>,

source§

fn to_superset(&self) -> Similarity<T2, R, D>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, R, D>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(sim: &Similarity<T2, R, D>) -> Translation<T1, D>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Isometry<T1, R1, D>
where T1: RealField, T2: RealField + SupersetOf<T1>, R1: AbstractRotation<T1, D> + SubsetOf<R2>, R2: AbstractRotation<T2, D>,

source§

fn to_superset(&self) -> Similarity<T2, R2, D>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, R2, D>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(sim: &Similarity<T2, R2, D>) -> Isometry<T1, R1, D>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R1, R2, const D: usize> SubsetOf<Similarity<T2, R2, D>> for Similarity<T1, R1, D>
where T1: RealField + SubsetOf<T2>, T2: RealField + SupersetOf<T1>, R1: AbstractRotation<T1, D> + SubsetOf<R2>, R2: AbstractRotation<T2, D>,

source§

fn to_superset(&self) -> Similarity<T2, R2, D>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, R2, D>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(sim: &Similarity<T2, R2, D>) -> Similarity<T1, R1, D>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2> SubsetOf<Similarity<T2, Unit<Quaternion<T2>>, 3>> for Unit<DualQuaternion<T1>>
where T1: RealField, T2: RealField + SupersetOf<T1>,

source§

fn to_superset(&self) -> Similarity<T2, Unit<Quaternion<T2>>, 3>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(sim: &Similarity<T2, Unit<Quaternion<T2>>, 3>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked( sim: &Similarity<T2, Unit<Quaternion<T2>>, 3>, ) -> Unit<DualQuaternion<T1>>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl<T1, T2, R, C, const D: usize> SubsetOf<Transform<T2, C, D>> for Similarity<T1, R, D>
where T1: RealField, T2: RealField + SupersetOf<T1>, C: SuperTCategoryOf<TAffine>, R: AbstractRotation<T1, D> + SubsetOf<Matrix<T1, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T1, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>> + SubsetOf<Matrix<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output, <DefaultAllocator as Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>>::Buffer>>, Const<D>: DimNameAdd<Const<1>> + DimMin<Const<D>, Output = Const<D>>, DefaultAllocator: Allocator<T1, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output> + Allocator<T2, <Const<D> as DimNameAdd<Const<1>>>::Output, <Const<D> as DimNameAdd<Const<1>>>::Output>,

source§

fn to_superset(&self) -> Transform<T2, C, D>

The inclusion map: converts self to the equivalent element of its superset.
source§

fn is_in_subset(t: &Transform<T2, C, D>) -> bool

Checks if element is actually part of the subset Self (and can be converted to it).
source§

fn from_superset_unchecked(t: &Transform<T2, C, D>) -> Similarity<T1, R, D>

Use with care! Same as self.to_superset but without any property checks. Always succeeds.
§

fn from_superset(element: &T) -> Option<Self>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
source§

impl TryFrom<DMat3> for Similarity<f64, Unit<Complex<f64>>, 2>

§

type Error = ()

The type returned in the event of a conversion error.
source§

fn try_from(mat3: DMat3) -> Result<Similarity<f64, Unit<Complex<f64>>, 2>, ()>

Performs the conversion.
source§

impl TryFrom<DMat4> for Similarity<f64, Unit<Quaternion<f64>>, 3>

§

type Error = ()

The type returned in the event of a conversion error.
source§

fn try_from( mat4: DMat4, ) -> Result<Similarity<f64, Unit<Quaternion<f64>>, 3>, ()>

Performs the conversion.
source§

impl TryFrom<Mat3> for Similarity<f32, Unit<Complex<f32>>, 2>

§

type Error = ()

The type returned in the event of a conversion error.
source§

fn try_from(mat3: Mat3) -> Result<Similarity<f32, Unit<Complex<f32>>, 2>, ()>

Performs the conversion.
source§

impl TryFrom<Mat4> for Similarity<f32, Unit<Quaternion<f32>>, 3>

§

type Error = ()

The type returned in the event of a conversion error.
source§

fn try_from(mat4: Mat4) -> Result<Similarity<f32, Unit<Quaternion<f32>>, 3>, ()>

Performs the conversion.
source§

impl<T, R, const D: usize> UlpsEq for Similarity<T, R, D>
where T: RealField, R: AbstractRotation<T, D> + UlpsEq<Epsilon = <T as AbsDiffEq>::Epsilon>, <T as AbsDiffEq>::Epsilon: Clone,

source§

fn default_max_ulps() -> u32

The default ULPs to tolerate when testing values that are far-apart. Read more
source§

fn ulps_eq( &self, other: &Similarity<T, R, D>, epsilon: <Similarity<T, R, D> as AbsDiffEq>::Epsilon, max_ulps: u32, ) -> bool

A test for equality that uses units in the last place (ULP) if the values are far apart.
§

fn ulps_ne(&self, other: &Rhs, epsilon: Self::Epsilon, max_ulps: u32) -> bool

The inverse of [UlpsEq::ulps_eq].
source§

impl<T, R, const D: usize> Copy for Similarity<T, R, D>
where T: Copy, R: Copy,

source§

impl<T, R, const D: usize> Eq for Similarity<T, R, D>
where T: SimdRealField, R: AbstractRotation<T, D> + Eq,

Auto Trait Implementations§

§

impl<T, R, const D: usize> Freeze for Similarity<T, R, D>
where T: Freeze, R: Freeze,

§

impl<T, R, const D: usize> RefUnwindSafe for Similarity<T, R, D>

§

impl<T, R, const D: usize> Send for Similarity<T, R, D>
where T: Send, R: Send,

§

impl<T, R, const D: usize> Sync for Similarity<T, R, D>
where T: Sync, R: Sync,

§

impl<T, R, const D: usize> Unpin for Similarity<T, R, D>
where T: Unpin, R: Unpin,

§

impl<T, R, const D: usize> UnwindSafe for Similarity<T, R, D>
where T: UnwindSafe, R: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> AnyEq for T
where T: Any + PartialEq,

§

fn equals(&self, other: &(dyn Any + 'static)) -> bool

§

fn as_any(&self) -> &(dyn Any + 'static)

§

impl<T, U> AsBindGroupShaderType<U> for T
where U: ShaderType, &'a T: for<'a> Into<U>,

§

fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U

Return the T [ShaderType] for self. When used in [AsBindGroup] derives, it is safe to assume that all images in self exist.
§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

§

fn implicit( self, class: Class, constructed: bool, tag: u32, ) -> TaggedParser<'a, Implicit, Self, E>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Copy,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> DynClone for T
where T: Clone,

§

impl<T> DynEq for T
where T: Any + Eq,

§

fn as_any(&self) -> &(dyn Any + 'static)

Casts the type to dyn Any.
§

fn dyn_eq(&self, other: &(dyn DynEq + 'static)) -> bool

This method tests for self and other values to be equal. Read more
§

impl<T> DynHash for T
where T: DynEq + Hash,

§

fn as_dyn_eq(&self) -> &(dyn DynEq + 'static)

Casts the type to dyn Any.
§

fn dyn_hash(&self, state: &mut dyn Hasher)

Feeds this value into the given Hasher.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<S> FromSample<S> for S

§

fn from_sample_(s: S) -> S

§

impl<T> FromWorld for T
where T: Default,

§

fn from_world(_world: &mut World) -> T

Creates Self using data from the given [World]
§

impl<T> FromWorld for T
where T: Default,

§

fn from_world(_world: &World) -> T

Creates Self using data from the given World.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<F, T> IntoSample<T> for F
where T: FromSample<F>,

§

fn into_sample(self) -> T

§

impl<T> One for T
where T: One,

§

fn one() -> T

§

impl<T> Pipe for T
where T: ?Sized,

§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> RawClone for T
where T: Clone,

§

unsafe fn raw_clone(src: *const c_void, dst: *mut c_void)

Write the default value of the type to the pointer. Read more
§

fn raw_clone_cb() -> Unsafe<&'static (dyn Fn(*const c_void, *mut c_void) + Send + Sync)>

Get a callback suitable for [SchemaData].
§

impl<T> RawDefault for T
where T: Default,

§

unsafe fn raw_default(dst: *mut c_void)

Write the default value of the type to the pointer. Read more
§

fn raw_default_cb() -> Unsafe<&'static (dyn Fn(*mut c_void) + Send + Sync)>

Get a callback suitable for [SchemaData].
§

impl<T> RawDrop for T

§

unsafe fn raw_drop(ptr: *mut c_void)

Write the default value of the type to the pointer. Read more
§

fn raw_drop_cb() -> Unsafe<&'static (dyn Fn(*mut c_void) + Send + Sync)>

Get a callback suitable for [SchemaData].
§

impl<T> RawEq for T
where T: Eq,

§

unsafe fn raw_eq(a: *const c_void, b: *const c_void) -> bool

Get the hash of the type. Read more
§

fn raw_eq_cb() -> Unsafe<&'static (dyn Fn(*const c_void, *const c_void) -> bool + Send + Sync)>

Get a callback suitable for [SchemaData].
§

impl<T> RawHash for T
where T: Hash,

§

unsafe fn raw_hash(ptr: *const c_void) -> u64

Get the hash of the type. Read more
§

fn raw_hash_cb() -> Unsafe<&'static (dyn Fn(*const c_void) -> u64 + Send + Sync)>

Get a callback suitable for [SchemaData].
source§

impl<T> Same for T

§

type Output = T

Should always be Self
§

impl<'gc, T> Singleton<'gc> for T
where T: Default,

§

fn create(_: Context<'gc>) -> T

§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
§

impl<T> Tap for T

§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

§

fn to_sample_(self) -> U

§

impl<T> ToSmolStr for T
where T: Display + ?Sized,

§

fn to_smolstr(&self) -> SmolStr

source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
§

impl<T> TryConv for T

§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> TypeData for T
where T: 'static + Send + Sync + Clone,

§

fn clone_type_data(&self) -> Box<dyn TypeData>

§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T, Right> ClosedDiv<Right> for T
where T: Div<Right, Output = T> + DivAssign<Right>,

§

impl<T, Right> ClosedMul<Right> for T
where T: Mul<Right, Output = T> + MulAssign<Right>,

§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,

source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,

§

impl<T> SerializableAny for T
where T: 'static + Any + Clone + for<'a> Send + Sync,