Trait alga::linear::AffineTransformation [] [src]

pub trait AffineTransformation<E: EuclideanSpace>: Transformation<E> {
    type PreRotation: Rotation<E>;
    type NonUniformScaling: AffineTransformation<E>;
    type PostRotation: Rotation<E>;
    type Translation: Translation<E>;
    fn decompose(&self) -> (Self::Translation, Self::PostRotation, Self::NonUniformScaling, Self::PreRotation);
}

The group of affine transformations. They are decomposable into a rotation, a non-uniform scaling, a second rotation, and a translation (applied in that order).

Associated Types

Type of the first rotation to be applied.

Type of the non-uniform scaling to be applied.

Type of the second rotation to be applied.

The type of the pure translation part of this affine transformation.

Required Methods

Decomposes this affine transformaton into a rotation followed by a non-uniform scaling, followed by a rotation, followed by a translation.

Implementors