[][src]Trait alga::linear::Similarity

pub trait Similarity<E: EuclideanSpace>: AffineTransformation<E, NonUniformScaling = Self::Scaling> {
    type Scaling: Scaling<E>;
    fn translation(&self) -> Self::Translation;
fn rotation(&self) -> Self::Rotation;
fn scaling(&self) -> Self::Scaling; fn translate_point(&self, pt: &E) -> E { ... }
fn rotate_point(&self, pt: &E) -> E { ... }
fn scale_point(&self, pt: &E) -> E { ... }
fn rotate_vector(&self, pt: &E::Coordinates) -> E::Coordinates { ... }
fn scale_vector(&self, pt: &E::Coordinates) -> E::Coordinates { ... }
fn inverse_translate_point(&self, pt: &E) -> E { ... }
fn inverse_rotate_point(&self, pt: &E) -> E { ... }
fn inverse_scale_point(&self, pt: &E) -> E { ... }
fn inverse_rotate_vector(&self, pt: &E::Coordinates) -> E::Coordinates { ... }
fn inverse_scale_vector(&self, pt: &E::Coordinates) -> E::Coordinates { ... } }

Subgroups of the similarity group S(n), i.e., rotations, translations, and (signed) uniform scaling.

Similarities map lines to lines and preserve angles.

Associated Types

The type of the pure (uniform) scaling part of this similarity transformation.

Required Methods

The pure translational component of this similarity transformation.

The pure rotational component of this similarity transformation.

The pure scaling component of this similarity transformation.

Provided Methods

Applies this transformation's pure translational part to a point.

Applies this transformation's pure rotational part to a point.

Applies this transformation's pure scaling part to a point.

Applies this transformation's pure rotational part to a vector.

Applies this transformation's pure scaling part to a vector.

Applies this transformation inverse's pure translational part to a point.

Applies this transformation inverse's pure rotational part to a point.

Applies this transformation inverse's pure scaling part to a point.

Applies this transformation inverse's pure rotational part to a vector.

Applies this transformation inverse's pure scaling part to a vector.

Implementors

impl<E: EuclideanSpace> Similarity<E> for Id
[src]

impl<R, E> Similarity<E> for R where
    R: Real + SubsetOf<R>,
    E: EuclideanSpace<Real = R>,
    E::Coordinates: ClosedMul<R> + ClosedDiv<R> + ClosedNeg
[src]