![]() |
raylib-cpp
C++ object-oriented wrapper library for raylib.
|
Matrix type (OpenGL style 4x4 - right handed, column major) More...
#include <Matrix.hpp>
Public Member Functions | |
| Matrix (const ::Matrix &mat) | |
| Matrix (float m0=0, float m4=0, float m8=0, float m12=0, float m1=0, float m5=0, float m9=0, float m13=0, float m2=0, float m6=0, float m10=0, float m14=0, float m3=0, float m7=0, float m11=0, float m15=0) | |
| Matrix | Add (const ::Matrix &right) const |
| Elementwise matrix addition. More... | |
| float | GetM0 () const |
| Retrieves the m0 value for the object. More... | |
| float | GetM1 () const |
| Retrieves the m1 value for the object. More... | |
| float | GetM10 () const |
| Retrieves the m10 value for the object. More... | |
| float | GetM11 () const |
| Retrieves the m11 value for the object. More... | |
| float | GetM12 () const |
| Retrieves the m12 value for the object. More... | |
| float | GetM13 () const |
| Retrieves the m13 value for the object. More... | |
| float | GetM14 () const |
| Retrieves the m14 value for the object. More... | |
| float | GetM15 () const |
| Retrieves the m15 value for the object. More... | |
| float | GetM2 () const |
| Retrieves the m2 value for the object. More... | |
| float | GetM3 () const |
| Retrieves the m3 value for the object. More... | |
| float | GetM4 () const |
| Retrieves the m4 value for the object. More... | |
| float | GetM5 () const |
| Retrieves the m5 value for the object. More... | |
| float | GetM6 () const |
| Retrieves the m6 value for the object. More... | |
| float | GetM7 () const |
| Retrieves the m7 value for the object. More... | |
| float | GetM8 () const |
| Retrieves the m8 value for the object. More... | |
| float | GetM9 () const |
| Retrieves the m9 value for the object. More... | |
| Matrix | Invert () const |
| Inverts provided matrix. More... | |
| Matrix | Multiply (const ::Matrix &right) const |
| Matrix multiplication. More... | |
| operator float16 () const | |
| bool | operator!= (const ::Matrix &other) |
| Matrix | operator* (const ::Matrix &matrix) const |
| Matrix multiplication. More... | |
| Matrix | operator+ (const ::Matrix &matrix) const |
| Elementwise matrix addition. More... | |
| Matrix | operator- (const ::Matrix &matrix) const |
| Elementwise matrix subtraction. More... | |
| Matrix & | operator= (const ::Matrix &matrix) |
| Matrix & | operator= (const Matrix &matrix) |
| bool | operator== (const ::Matrix &other) |
| Matrix | Rotate (GlobalSpace_t, Quaternion quat) const |
| Rotates the current matrix in global space around the given quaternion. More... | |
| Matrix | Rotate (GlobalSpace_t, Vector3 axis, Radian angle) const |
| Rotates the current matrix in global space around the given axis. More... | |
| Matrix | Rotate (LocalSpace_t, Quaternion quat) const |
| Rotates the current matrix in local space around the given quaternion. More... | |
| Matrix | Rotate (LocalSpace_t, Vector3 axis, Radian angle) const |
| Rotates the current matrix in local space around the given axis. More... | |
| Matrix | Rotate (Quaternion quat) const |
| Rotates the current matrix in local space around the given quaternion. More... | |
| Matrix | Rotate (Vector3 axis, Radian angle) const |
| Rotates the current matrix in local space around the given axis. More... | |
| Matrix | RotateX (GlobalSpace_t, Radian angle) const |
| Rotates the current matrix in global space around the X axis. More... | |
| Matrix | RotateX (LocalSpace_t, Radian angle) const |
| Rotates the current matrix in local space around the X axis. More... | |
| Matrix | RotateX (Radian angle) const |
| Rotates the current matrix in local space around the X axis. More... | |
| Matrix | RotateXYZ (GlobalSpace_t, Radian x, Radian y, Radian z) const |
| Rotates the current matrix using the provided euler angles in global space. More... | |
| Matrix | RotateXYZ (GlobalSpace_t, Vector3 angle) const |
| Rotates the current matrix using the provided euler angles in global space. More... | |
| Matrix | RotateXYZ (LocalSpace_t, Radian x, Radian y, Radian z) const |
| Rotates the current matrix using the provided euler angles in local space. More... | |
| Matrix | RotateXYZ (LocalSpace_t, Vector3 angle) const |
| Rotates the current matrix using the provided euler angles in local space. More... | |
| Matrix | RotateXYZ (Radian x, Radian y, Radian z) const |
| Rotates the current matrix using the provided euler angles in local space. More... | |
| Matrix | RotateXYZ (Vector3 angle) const |
| Rotates the current matrix using the provided euler angles in local space. More... | |
| Matrix | RotateY (GlobalSpace_t, Radian angle) const |
| Rotates the current matrix in global space around the Y axis. More... | |
| Matrix | RotateY (LocalSpace_t, Radian angle) const |
| Rotates the current matrix in local space around the Y axis. More... | |
| Matrix | RotateY (Radian angle) const |
| Rotates the current matrix in local space around the Y axis. More... | |
| Matrix | RotateZ (GlobalSpace_t, Radian angle) const |
| Rotates the current matrix in global space around the Z axis. More... | |
| Matrix | RotateZ (LocalSpace_t, Radian angle) const |
| Rotates the current matrix in local space around the Z axis. More... | |
| Matrix | RotateZ (Radian angle) const |
| Rotates the current matrix in local space around the Z axis. More... | |
| Matrix | Scale (float all) const |
| Matrix | Scale (float x, float y, float z) const |
| Scales the current matrix in local space. More... | |
| Matrix | Scale (GlobalSpace_t, float x, float y, float z) const |
| Scales the current matrix in global space. More... | |
| Matrix | Scale (LocalSpace_t, float x, float y, float z) const |
| Scales the current matrix in local space. More... | |
| void | SetM0 (float value) |
| Sets the m0 value for the object. More... | |
| void | SetM1 (float value) |
| Sets the m1 value for the object. More... | |
| void | SetM10 (float value) |
| Sets the m10 value for the object. More... | |
| void | SetM11 (float value) |
| Sets the m11 value for the object. More... | |
| void | SetM12 (float value) |
| Sets the m12 value for the object. More... | |
| void | SetM13 (float value) |
| Sets the m13 value for the object. More... | |
| void | SetM14 (float value) |
| Sets the m14 value for the object. More... | |
| void | SetM15 (float value) |
| Sets the m15 value for the object. More... | |
| void | SetM2 (float value) |
| Sets the m2 value for the object. More... | |
| void | SetM3 (float value) |
| Sets the m3 value for the object. More... | |
| void | SetM4 (float value) |
| Sets the m4 value for the object. More... | |
| void | SetM5 (float value) |
| Sets the m5 value for the object. More... | |
| void | SetM6 (float value) |
| Sets the m6 value for the object. More... | |
| void | SetM7 (float value) |
| Sets the m7 value for the object. More... | |
| void | SetM8 (float value) |
| Sets the m8 value for the object. More... | |
| void | SetM9 (float value) |
| Sets the m9 value for the object. More... | |
| Matrix & | SetShaderValue (const ::Shader &shader, int uniformLoc) |
| Set shader uniform value (matrix 4x4) More... | |
| Matrix | Subtract (const ::Matrix &right) const |
| Elementwise matrix subtraction. More... | |
| float16 | ToFloatV () const |
| float | Trace () const |
| Returns the trace of the matrix (sum of the values along the diagonal) More... | |
| Matrix | Translate (float x, float y, float z) const |
| Translates the current matrix in global space. More... | |
| Matrix | Translate (GlobalSpace_t, float x, float y, float z) const |
| Translates the current matrix in global space. More... | |
| Matrix | Translate (GlobalSpace_t, Vector3 translation) const |
| Translates the current matrix in global space. More... | |
| Matrix | Translate (LocalSpace_t, float x, float y, float z) const |
| Translates the current matrix in local space. More... | |
| Matrix | Translate (LocalSpace_t, Vector3 translation) const |
| Translates the current matrix in local space. More... | |
| Matrix | Translate (Vector3 translation) const |
| Translates the current matrix in global space. More... | |
| Matrix | TranslateToOrigin () const |
| Creates a matrix that when multiplied by the current matrix will translate back to the origin (New function not provided by raylib) More... | |
| Matrix | Transpose () const |
| Transposes provided matrix. More... | |
Static Public Member Functions | |
| static Matrix | CreateRotate (Quaternion quat) |
| Creates a rotation matrix around the given quaternion. More... | |
| static Matrix | CreateRotate (Vector3 axis, Radian angle) |
| Creates a rotation matrix around the given axis. More... | |
| static Matrix | CreateRotateX (Radian angle) |
| Creates a rotation matrix around the X axis. More... | |
| static Matrix | CreateRotateXYZ (Radian x, Radian y, Radian z) |
| Creates a rotation matrix using the provided euler angles. More... | |
| static Matrix | CreateRotateXYZ (Vector3 angle) |
| Creates a rotation matrix using the provided euler angles. More... | |
| static Matrix | CreateRotateY (Radian angle) |
| Creates a rotation matrix around the Y axis. More... | |
| static Matrix | CreateRotateZ (Radian angle) |
| Creates a rotation matrix around the given axis. More... | |
| static Matrix | CreateScale (float x, float y, float z) |
| Creates a scale matrix. More... | |
| static Matrix | CreateTranslate (float x, float y, float z) |
| Creates a translation matrix. More... | |
| static Matrix | CreateTranslate (Vector3 translation) |
| Creates a translation matrix. More... | |
| static Matrix | Frustum (double left, double right, double bottom, double top, double near, double far) |
| static Matrix | GetCamera (const ::Camera &camera) |
| static Matrix | GetCamera (const ::Camera2D &camera) |
| static Matrix | Identity () |
| Creates an identity matrix. More... | |
| static Matrix | LookAt (Vector3 eye, Vector3 target, Vector3 up) |
| static Matrix | Ortho (double left, double right, double bottom, double top, double near, double far) |
| static Matrix | Perspective (double fovy, double aspect, double near, double far) |
Static Public Attributes | |
| static constexpr GlobalSpace_t | GlobalSpace {} |
| static constexpr LocalSpace_t | LocalSpace {} |
Protected Member Functions | |
| void | set (const ::Matrix &mat) |
Matrix type (OpenGL style 4x4 - right handed, column major)
Definition at line 18 of file Matrix.hpp.
|
inline |
Definition at line 25 of file Matrix.hpp.
|
inline |
Definition at line 33 of file Matrix.hpp.
|
inline |
Elementwise matrix addition.
Definition at line 134 of file Matrix.hpp.
|
inlinestatic |
Creates a rotation matrix around the given quaternion.
Definition at line 261 of file Matrix.hpp.
References CreateRotate().
Creates a rotation matrix around the given axis.
Definition at line 232 of file Matrix.hpp.
Referenced by CreateRotate(), and Rotate().
Creates a rotation matrix around the X axis.
Definition at line 349 of file Matrix.hpp.
Referenced by RotateX().
Creates a rotation matrix using the provided euler angles.
Definition at line 320 of file Matrix.hpp.
References CreateRotateXYZ().
Creates a rotation matrix using the provided euler angles.
Definition at line 291 of file Matrix.hpp.
Referenced by CreateRotateXYZ(), and RotateXYZ().
Creates a rotation matrix around the Y axis.
Definition at line 378 of file Matrix.hpp.
Referenced by RotateY().
Creates a rotation matrix around the given axis.
Definition at line 407 of file Matrix.hpp.
Referenced by RotateZ().
|
inlinestatic |
|
inlinestatic |
Creates a translation matrix.
Definition at line 176 of file Matrix.hpp.
Referenced by Translate(), and TranslateToOrigin().
Creates a translation matrix.
Definition at line 204 of file Matrix.hpp.
|
inlinestatic |
Definition at line 466 of file Matrix.hpp.
|
inlinestatic |
Definition at line 493 of file Matrix.hpp.
|
inlinestatic |
Definition at line 495 of file Matrix.hpp.
|
inline |
Retrieves the m0 value for the object.
Definition at line 54 of file Matrix.hpp.
|
inline |
Retrieves the m1 value for the object.
Definition at line 55 of file Matrix.hpp.
|
inline |
Retrieves the m10 value for the object.
Definition at line 64 of file Matrix.hpp.
|
inline |
Retrieves the m11 value for the object.
Definition at line 65 of file Matrix.hpp.
|
inline |
Retrieves the m12 value for the object.
Definition at line 66 of file Matrix.hpp.
|
inline |
Retrieves the m13 value for the object.
Definition at line 67 of file Matrix.hpp.
|
inline |
Retrieves the m14 value for the object.
Definition at line 68 of file Matrix.hpp.
|
inline |
Retrieves the m15 value for the object.
Definition at line 69 of file Matrix.hpp.
|
inline |
Retrieves the m2 value for the object.
Definition at line 56 of file Matrix.hpp.
|
inline |
Retrieves the m3 value for the object.
Definition at line 57 of file Matrix.hpp.
|
inline |
Retrieves the m4 value for the object.
Definition at line 58 of file Matrix.hpp.
|
inline |
Retrieves the m5 value for the object.
Definition at line 59 of file Matrix.hpp.
|
inline |
Retrieves the m6 value for the object.
Definition at line 60 of file Matrix.hpp.
|
inline |
Retrieves the m7 value for the object.
Definition at line 61 of file Matrix.hpp.
|
inline |
Retrieves the m8 value for the object.
Definition at line 62 of file Matrix.hpp.
|
inline |
Retrieves the m9 value for the object.
Definition at line 63 of file Matrix.hpp.
|
inlinestatic |
Creates an identity matrix.
Definition at line 119 of file Matrix.hpp.
|
inline |
Inverts provided matrix.
Definition at line 112 of file Matrix.hpp.
Referenced by Rotate(), RotateX(), RotateXYZ(), RotateY(), RotateZ(), and Scale().
Definition at line 479 of file Matrix.hpp.
|
inline |
Matrix multiplication.
Definition at line 162 of file Matrix.hpp.
|
inline |
Definition at line 483 of file Matrix.hpp.
|
inline |
Definition at line 92 of file Matrix.hpp.
|
inline |
Matrix multiplication.
Definition at line 169 of file Matrix.hpp.
|
inline |
Elementwise matrix addition.
Definition at line 141 of file Matrix.hpp.
|
inline |
Elementwise matrix subtraction.
Definition at line 155 of file Matrix.hpp.
|
inline |
Definition at line 71 of file Matrix.hpp.
Definition at line 78 of file Matrix.hpp.
|
inline |
Definition at line 85 of file Matrix.hpp.
|
inlinestatic |
Definition at line 475 of file Matrix.hpp.
|
inlinestatic |
Definition at line 471 of file Matrix.hpp.
|
inline |
Rotates the current matrix in global space around the given quaternion.
Definition at line 269 of file Matrix.hpp.
References CreateRotate().
Rotates the current matrix in global space around the given axis.
Definition at line 239 of file Matrix.hpp.
References CreateRotate().
Referenced by Rotate().
|
inline |
Rotates the current matrix in local space around the given quaternion.
Definition at line 276 of file Matrix.hpp.
References CreateRotate(), Invert(), and TranslateToOrigin().
Rotates the current matrix in local space around the given axis.
Definition at line 246 of file Matrix.hpp.
References CreateRotate(), Invert(), and TranslateToOrigin().
|
inline |
Rotates the current matrix in local space around the given quaternion.
Definition at line 284 of file Matrix.hpp.
References Rotate().
Rotates the current matrix in local space around the given axis.
Definition at line 254 of file Matrix.hpp.
References Rotate().
Rotates the current matrix in global space around the X axis.
Definition at line 356 of file Matrix.hpp.
References CreateRotateX().
Referenced by RotateX().
Rotates the current matrix in local space around the X axis.
Definition at line 363 of file Matrix.hpp.
References CreateRotateX(), Invert(), and TranslateToOrigin().
Rotates the current matrix in local space around the X axis.
Definition at line 371 of file Matrix.hpp.
References RotateX().
Rotates the current matrix using the provided euler angles in global space.
Definition at line 327 of file Matrix.hpp.
References CreateRotateXYZ().
Rotates the current matrix using the provided euler angles in global space.
Definition at line 298 of file Matrix.hpp.
References CreateRotateXYZ().
Referenced by RotateXYZ().
Rotates the current matrix using the provided euler angles in local space.
Definition at line 334 of file Matrix.hpp.
References CreateRotateXYZ(), Invert(), and TranslateToOrigin().
Rotates the current matrix using the provided euler angles in local space.
Definition at line 305 of file Matrix.hpp.
References CreateRotateXYZ(), Invert(), and TranslateToOrigin().
Rotates the current matrix using the provided euler angles in local space.
Definition at line 342 of file Matrix.hpp.
References RotateXYZ().
Rotates the current matrix using the provided euler angles in local space.
Definition at line 313 of file Matrix.hpp.
References RotateXYZ().
Rotates the current matrix in global space around the Y axis.
Definition at line 385 of file Matrix.hpp.
References CreateRotateY().
Referenced by RotateY().
Rotates the current matrix in local space around the Y axis.
Definition at line 392 of file Matrix.hpp.
References CreateRotateY(), Invert(), and TranslateToOrigin().
Rotates the current matrix in local space around the Y axis.
Definition at line 400 of file Matrix.hpp.
References RotateY().
Rotates the current matrix in global space around the Z axis.
Definition at line 414 of file Matrix.hpp.
References CreateRotateZ().
Referenced by RotateZ().
Rotates the current matrix in local space around the Z axis.
Definition at line 421 of file Matrix.hpp.
References CreateRotateZ(), Invert(), and TranslateToOrigin().
Rotates the current matrix in local space around the Z axis.
Definition at line 429 of file Matrix.hpp.
References RotateZ().
|
inline |
Definition at line 462 of file Matrix.hpp.
|
inline |
Scales the current matrix in local space.
Definition at line 458 of file Matrix.hpp.
References Scale().
|
inline |
Scales the current matrix in global space.
Definition at line 443 of file Matrix.hpp.
References CreateScale().
Referenced by Scale().
|
inline |
Scales the current matrix in local space.
Definition at line 450 of file Matrix.hpp.
References CreateScale(), Invert(), and TranslateToOrigin().
|
inlineprotected |
Definition at line 499 of file Matrix.hpp.
|
inline |
Sets the m0 value for the object.
| value | The value of which to set m0 to. |
Definition at line 54 of file Matrix.hpp.
|
inline |
Sets the m1 value for the object.
| value | The value of which to set m1 to. |
Definition at line 55 of file Matrix.hpp.
|
inline |
Sets the m10 value for the object.
| value | The value of which to set m10 to. |
Definition at line 64 of file Matrix.hpp.
|
inline |
Sets the m11 value for the object.
| value | The value of which to set m11 to. |
Definition at line 65 of file Matrix.hpp.
|
inline |
Sets the m12 value for the object.
| value | The value of which to set m12 to. |
Definition at line 66 of file Matrix.hpp.
|
inline |
Sets the m13 value for the object.
| value | The value of which to set m13 to. |
Definition at line 67 of file Matrix.hpp.
|
inline |
Sets the m14 value for the object.
| value | The value of which to set m14 to. |
Definition at line 68 of file Matrix.hpp.
|
inline |
Sets the m15 value for the object.
| value | The value of which to set m15 to. |
Definition at line 69 of file Matrix.hpp.
|
inline |
Sets the m2 value for the object.
| value | The value of which to set m2 to. |
Definition at line 56 of file Matrix.hpp.
|
inline |
Sets the m3 value for the object.
| value | The value of which to set m3 to. |
Definition at line 57 of file Matrix.hpp.
|
inline |
Sets the m4 value for the object.
| value | The value of which to set m4 to. |
Definition at line 58 of file Matrix.hpp.
|
inline |
Sets the m5 value for the object.
| value | The value of which to set m5 to. |
Definition at line 59 of file Matrix.hpp.
|
inline |
Sets the m6 value for the object.
| value | The value of which to set m6 to. |
Definition at line 60 of file Matrix.hpp.
|
inline |
Sets the m7 value for the object.
| value | The value of which to set m7 to. |
Definition at line 61 of file Matrix.hpp.
|
inline |
Sets the m8 value for the object.
| value | The value of which to set m8 to. |
Definition at line 62 of file Matrix.hpp.
|
inline |
Sets the m9 value for the object.
| value | The value of which to set m9 to. |
Definition at line 63 of file Matrix.hpp.
|
inline |
Set shader uniform value (matrix 4x4)
Definition at line 488 of file Matrix.hpp.
|
inline |
Elementwise matrix subtraction.
Definition at line 148 of file Matrix.hpp.
|
inline |
Definition at line 481 of file Matrix.hpp.
|
inline |
Returns the trace of the matrix (sum of the values along the diagonal)
Definition at line 98 of file Matrix.hpp.
|
inline |
Translates the current matrix in global space.
Definition at line 197 of file Matrix.hpp.
References Translate().
|
inline |
Translates the current matrix in global space.
Definition at line 183 of file Matrix.hpp.
References CreateTranslate().
Referenced by Translate().
Translates the current matrix in global space.
Definition at line 211 of file Matrix.hpp.
References CreateTranslate().
|
inline |
Translates the current matrix in local space.
Definition at line 190 of file Matrix.hpp.
References CreateTranslate().
Translates the current matrix in local space.
Definition at line 218 of file Matrix.hpp.
References CreateTranslate().
Translates the current matrix in global space.
Definition at line 225 of file Matrix.hpp.
References Translate().
|
inline |
Creates a matrix that when multiplied by the current matrix will translate back to the origin (New function not provided by raylib)
Definition at line 127 of file Matrix.hpp.
References CreateTranslate().
Referenced by Rotate(), RotateX(), RotateXYZ(), RotateY(), RotateZ(), and Scale().
|
inline |
Transposes provided matrix.
Definition at line 105 of file Matrix.hpp.
|
staticconstexpr |
Definition at line 23 of file Matrix.hpp.
|
staticconstexpr |
Definition at line 21 of file Matrix.hpp.