Stellarium
0.20.4
|
A templatized column-major 4x4 matrix compatible with OpenGL. More...
#include <VecMath.hpp>
Public Member Functions | |
Matrix4 (T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T) | |
Matrix4 (const T *) | |
Matrix4 (const Vector4< T > &, const Vector4< T > &, const Vector4< T > &, const Vector4< T > &) | |
Matrix4 & | operator= (const T *) |
void | set (T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T) |
T & | operator[] (int) |
operator T* () | |
operator const T * () const | |
Matrix4 | operator- (const Matrix4< T > &) const |
Matrix4 | operator+ (const Matrix4< T > &) const |
Matrix4 | operator* (const Matrix4< T > &) const |
Vector3< T > | operator* (const Vector3< T > &) const |
Vector3< T > | multiplyWithoutTranslation (const Vector3< T > &a) const |
Vector4< T > | operator* (const Vector4< T > &) const |
void | transfo (Vector3< T > &) const |
Matrix4< T > | transpose () const |
Matrix4< T > | inverse () const |
Matrix3< T > | upper3x3 () const |
Matrix3< T > | upper3x3Transposed () const |
Vector4< T > | getRow (const int row) const |
Vector4< T > | getColumn (const int column) const |
QMatrix4x4 | convertToQMatrix () const |
void | print (void) const |
QString | toString (int fieldWidth=0, char format='g', int precision=-1) const |
Static Public Member Functions | |
static Matrix4< T > | identity () |
static Matrix4< T > | translation (const Vector3< T > &) |
static Matrix4< T > | rotation (const Vector3< T > &, T) |
static Matrix4< T > | xrotation (T) |
static Matrix4< T > | yrotation (T) |
static Matrix4< T > | zrotation (T) |
static Matrix4< T > | scaling (const Vector3< T > &) |
static Matrix4< T > | scaling (T) |
Data Fields | |
T | r [16] |
Use Mat4d or Mat4f typdef for matrices of doubles and floats respectively.