Matrix with 3x3 elements. More...
#include <kanzi/core/math/matrix3x3.hpp>
Public Member Functions | |
Matrix3x3 () | |
Default constructor, initializes the matrix to identity matrix. More... | |
Matrix3x3 (float x0, float x1, float x2, float x3, float x4, float x5, float x6, float x7, float x8) | |
Constructs the matrix from elements. More... | |
Matrix3x3 (const Vector2 &x, const Vector2 &y, const Vector2 &translation) | |
Constructs the matrix from 3 vectors. More... | |
const float & | operator[] (size_t index) const |
Access to individual elements of the matrix. More... | |
float & | operator[] (size_t index) |
Access to individual elements of the matrix. More... | |
Vector2 | getXAxis () const |
Vector2 | getYAxis () const |
Vector2 | getTranslation () const |
float | getScaleX () const |
Get X scale component. More... | |
float | getScaleY () const |
Get Y scale component. More... | |
Vector2 | getScale () const |
Get scale as a vector. More... | |
void | scale (const Vector2 &v) |
void | setXAxis (Vector2 v) |
void | setYAxis (Vector2 v) |
void | setTranslation (Vector2 translation) |
Set translation. More... | |
void | setTranslation (float translationX, float translationY) |
Set translation. More... | |
float | getTranslationX () const |
Get translation on X axis. More... | |
void | setTranslationX (float translationX) |
Set translation on X axis. More... | |
float | getTranslationY () const |
Get translation on Y axis. More... | |
void | setTranslationY (float translationY) |
Set translation on Y axis. More... | |
Matrix3x3 & | operator+= (const Matrix3x3 &m) |
Modifies this matrix by adding another matrix. More... | |
Matrix3x3 & | operator-= (const Matrix3x3 &m) |
Modifies this matrix by subtracting another matrix from this matrix. More... | |
Matrix3x3 & | operator*= (const Matrix3x3 &m) |
Modifies this matrix by multiplying it with another matrix. More... | |
Static Public Member Functions | |
static Matrix3x3 | createTranslation (Vector2 translation) |
static Matrix3x3 | createTranslation (float x, float y) |
static Matrix3x3 | createScale (Vector2 scale) |
static Matrix3x3 | createIdentity () |
static Matrix3x3 | createRotationInDegrees (float angleInDegrees) |
static Matrix3x3 | createRotationInRadians (float angleInRadians) |
static Matrix3x3 | createSRT (Vector2 scale, float rotationInRadians, Vector2 translation) |
Create an SRT matrix. More... | |
Matrix with 3x3 elements.
|
inlineexplicit |
Default constructor, initializes the matrix to identity matrix.
|
inlineexplicit |
Constructs the matrix from elements.
|
inlineexplicit |
Constructs the matrix from 3 vectors.
|
inline |
Access to individual elements of the matrix.
index | Index of the accessed element. Should be at least 0 and at most 15. |
|
inline |
Access to individual elements of the matrix.
index | Index of the accessed element. Should be at least 0 and at most 15. |
|
inline |
|
inline |
|
inline |
|
inline |
Get X scale component.
|
inline |
Get Y scale component.
|
inline |
Get scale as a vector.
|
inline |
|
inline |
|
inline |
|
inline |
Set translation.
translation | Translation vector. |
|
inline |
Set translation.
translationX | Translation X component. |
translationY | Translation Y component. |
|
inline |
Get translation on X axis.
|
inline |
Set translation on X axis.
translationX | Translation X component. |
|
inline |
Get translation on Y axis.
|
inline |
Set translation on Y axis.
translationY | Translation Y component. |
Modifies this matrix by adding another matrix.
m | Another matrix. |
Modifies this matrix by subtracting another matrix from this matrix.
m | Another matrix. |
Modifies this matrix by multiplying it with another matrix.
m | Another matrix. |
|
inlinestatic |
|
inlinestatic |
|
static |
|
static |
|
static |
Create an SRT matrix.
scale | Scales by axises. |
rotationInRadians | Rotation component in radians. |
translation | Translation component. |