Compacted affine matrix for 2D operations. More...
Public Member Functions | |
| AffineMatrix2D (Matrix2D m, Point2Dd p) | |
| Define an affine matrix. | |
| void | Invert () |
| Invert this affine transformation in-place if possible. | |
| AffineMatrix2D | Inverse () |
| Gets the inverse of this affine transformation if possible. | |
| override string | ToString () |
| String conversion. | |
Static Public Member Functions | |
| static AffineMatrix2D | operator* (AffineMatrix2D lhs, AffineMatrix2D rhs) |
| Compose two affine matrices by multiplying them. | |
Static Public Attributes | |
| static readonly AffineMatrix2D | Identity = new AffineMatrix2D(Matrix2D.Identity, Point2Dd.Empty) |
| The identity element. | |
Properties | |
| Point2Dd | Translation [get, set] |
| The translation part of the affine matrix. | |
| Matrix2D | Matrix [get, set] |
| The transformation part of the affine matrix. | |
| double | this[int row, int column] [get, set] |
| Index access. | |
| bool | IsTranslation [get] |
| True if this affine matrix corresponds to a pure translation, false otherwise. | |
Compacted affine matrix for 2D operations.
The third line is assumed to be 0, 0, 1.
| AffineMatrix2D | ( | Matrix2D | m, |
| Point2Dd | p ) |
Define an affine matrix.
| m | transformation part |
| p | translation part |
| AffineMatrix2D Inverse | ( | ) |
Gets the inverse of this affine transformation if possible.
| DivideByZeroException | If the matrix cannot be inverted. |
| void Invert | ( | ) |
Invert this affine transformation in-place if possible.
| DivideByZeroException | If the matrix cannot be inverted. |
|
static |
Compose two affine matrices by multiplying them.
| lhs | left hand side operand |
| rhs | right hand side operand |
| override string ToString | ( | ) |
String conversion.
|
getset |
Index access.
| row | The row, or "Y" index to get. |
| column | The column, or "X" index to get. |