Dry
|
2x2 matrix for rotation and scaling. More...
#include <Dry/Math/Matrix2.h>
Public Member Functions | |
Matrix2 () noexcept | |
Construct an identity matrix. | |
Matrix2 (const Matrix2 &matrix) noexcept=default | |
Copy-construct from another matrix. | |
Matrix2 (float v00, float v01, float v10, float v11) noexcept | |
Construct from values. | |
Matrix2 (const float *data) noexcept | |
Construct from a float array. | |
Matrix2 & | operator= (const Matrix2 &rhs) noexcept=default |
Assign from another matrix. | |
bool | operator== (const Matrix2 &rhs) const |
Test for equality with another matrix without epsilon. | |
bool | operator!= (const Matrix2 &rhs) const |
Test for inequality with another matrix without epsilon. | |
Vector2 | operator* (const Vector2 &rhs) const |
Multiply a Vector2. | |
Matrix2 | operator+ (const Matrix2 &rhs) const |
Add a matrix. | |
Matrix2 | operator- (const Matrix2 &rhs) const |
Subtract a matrix. | |
Matrix2 | operator* (float rhs) const |
Multiply with a scalar. | |
Matrix2 | operator* (const Matrix2 &rhs) const |
Multiply a matrix. | |
void | SetScale (const Vector2 &scale) |
Set scaling elements. | |
void | SetScale (float scale) |
Set uniform scaling elements. | |
Vector2 | Scale () const |
Return the scaling part. | |
Matrix2 | Transpose () const |
Return transpose. | |
Matrix2 | Scaled (const Vector2 &scale) const |
Return scaled by a vector. | |
bool | Equals (const Matrix2 &rhs) const |
Test for equality with another matrix with epsilon. | |
Matrix2 | Inverse () const |
Return inverse. | |
const float * | Data () const |
Return float data. | |
bool | IsNaN () const |
Return whether any element is NaN. | |
bool | IsInf () const |
Return whether any element is Inf. | |
String | ToString () const |
Return as string. | |
Static Public Member Functions | |
static void | BulkTranspose (float *dest, const float *src, unsigned count) |
Bulk transpose matrices. | |
Public Attributes | |
float | m00_ |
float | m01_ |
float | m10_ |
float | m11_ |
Static Public Attributes | |
static const Matrix2 | ZERO |
Zero matrix. | |
static const Matrix2 | IDENTITY |
Identity matrix. | |
2x2 matrix for rotation and scaling.