Struct euclid::matrix2d::TypedMatrix2D [] [src]

pub struct TypedMatrix2D<T, Src, Dst> {
    pub m11: T,
    pub m12: T,
    pub m21: T,
    pub m22: T,
    pub m31: T,
    pub m32: T,
    // some fields omitted
}

A 2d transform stored as a 2 by 3 matrix in row-major order in memory, useful to represent 2d transformations.

Matrices can be parametrized over the source and destination units, to describe a transformation from a space to another. For example, TypedMatrix2D::transform_point4d takes a TypedPoint2D and returns a TypedPoint2D.

Matrices expose a set of convenience methods for pre- and post-transformations. A pre-transformation corresponds to adding an operation that is applied before the rest of the transformation, while a post-transformation adds an operation that is appled after.

Fields

Methods

impl<T: Copy, Src, Dst> TypedMatrix2D<T, Src, Dst>
[src]

Create a matrix specifying its components in row-major order.

Create a matrix specifying its components in column-major order.

Returns an array containing this matrix's terms in row-major order (the order in which the matrix is actually laid out in memory).

Returns an array containing this matrix's terms in column-major order.

Drop the units, preserving only the numeric value.

Tag a unitless value with units.

impl<T, Src, Dst> TypedMatrix2D<T, Src, Dst> where T: Copy + Clone + Add<T, Output=T> + Mul<T, Output=T> + Div<T, Output=T> + Sub<T, Output=T> + Trig + PartialOrd + One + Zero
[src]

Returns the multiplication of the two matrices such that mat's transformation applies after self's transformation.

Returns the multiplication of the two matrices such that mat's transformation applies before self's transformation.

Returns a translation matrix.

Applies a translation after self's transformation and returns the resulting matrix.

Applies a translation before self's transformation and returns the resulting matrix.

Returns a scale matrix.

Applies a scale after self's transformation and returns the resulting matrix.

Applies a scale before self's transformation and returns the resulting matrix.

Returns a rotation matrix.

Applies a rotation after self's transformation and returns the resulting matrix.

Applies a rotation after self's transformation and returns the resulting matrix.

Returns the given point transformed by this matrix.

Returns a rectangle that encompasses the result of transforming the given rectangle by this matrix.

Computes and returns the determinant of this matrix.

Returns the inverse matrix if possible.

Returns the same matrix with a different destination unit.

Returns the same matrix with a different source unit.

impl<T: ApproxEq<T>, Src, Dst> TypedMatrix2D<T, Src, Dst>
[src]

Trait Implementations

impl<T: Clone, Src, Dst> Clone for TypedMatrix2D<T, Src, Dst>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<T: Copy, Src, Dst> Copy for TypedMatrix2D<T, Src, Dst>
[src]

impl<T, Src, Dst> HeapSizeOf for TypedMatrix2D<T, Src, Dst> where T: HeapSizeOf
[src]

Measure the size of any heap-allocated structures that hang off this value, but not the space taken up by the value itself (i.e. what size_of:: measures, more or less); that space is handled by the implementation of HeapSizeOf for Box below. Read more

impl<T, Src, Dst> Deserialize for TypedMatrix2D<T, Src, Dst> where T: Deserialize
[src]

Deserialize this value given this Deserializer.

impl<T, Src, Dst> Serialize for TypedMatrix2D<T, Src, Dst> where T: Serialize
[src]

Serializes this value into this serializer.

impl<T, Src, Dst> Eq for TypedMatrix2D<T, Src, Dst> where T: Eq
[src]

impl<T, Src, Dst> PartialEq for TypedMatrix2D<T, Src, Dst> where T: PartialEq
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<T, Src, Dst> Hash for TypedMatrix2D<T, Src, Dst> where T: Hash
[src]

Feeds this value into the state given, updating the hasher as necessary.

Feeds a slice of this type into the state provided.

impl<T: Copy + Debug, Src, Dst> Debug for TypedMatrix2D<T, Src, Dst>
[src]

Formats the value using the given formatter.