2018-05-19 23:15:15 +08:00
|
|
|
use base::dimension::{U2, U3};
|
2016-12-05 05:44:42 +08:00
|
|
|
|
2018-02-02 19:26:35 +08:00
|
|
|
use geometry::{TAffine, TGeneral, TProjective, Transform};
|
2017-02-13 01:17:09 +08:00
|
|
|
|
|
|
|
/// A 2D general transformation that may not be inversible. Stored as an homogeneous 3x3 matrix.
|
2018-02-02 19:26:35 +08:00
|
|
|
pub type Transform2<N> = Transform<N, U2, TGeneral>;
|
2017-02-13 01:17:09 +08:00
|
|
|
/// An inversible 2D general transformation. Stored as an homogeneous 3x3 matrix.
|
2017-08-03 01:37:44 +08:00
|
|
|
pub type Projective2<N> = Transform<N, U2, TProjective>;
|
2017-02-13 01:17:09 +08:00
|
|
|
/// A 2D affine transformation. Stored as an homogeneous 3x3 matrix.
|
2018-02-02 19:26:35 +08:00
|
|
|
pub type Affine2<N> = Transform<N, U2, TAffine>;
|
2016-12-05 05:44:42 +08:00
|
|
|
|
2017-02-13 01:17:09 +08:00
|
|
|
/// A 3D general transformation that may not be inversible. Stored as an homogeneous 4x4 matrix.
|
2018-02-02 19:26:35 +08:00
|
|
|
pub type Transform3<N> = Transform<N, U3, TGeneral>;
|
2017-02-13 01:17:09 +08:00
|
|
|
/// An inversible 3D general transformation. Stored as an homogeneous 4x4 matrix.
|
2017-08-03 01:37:44 +08:00
|
|
|
pub type Projective3<N> = Transform<N, U3, TProjective>;
|
2017-02-13 01:17:09 +08:00
|
|
|
/// A 3D affine transformation. Stored as an homogeneous 4x4 matrix.
|
2018-02-02 19:26:35 +08:00
|
|
|
pub type Affine3<N> = Transform<N, U3, TAffine>;
|