glVertex
5.5.2
|
3x3 double matrix More...
#include <glslmath.h>
Public Member Functions | |
mat3 (double diag=1.0) | |
default constructor | |
mat3 (const vec3 &diag) | |
custom constructor | |
mat3 (const vec3 &r1, const vec3 &r2, const vec3 &r3=vec3(0, 0, 1)) | |
custom constructor | |
mat3 (const mat2 &m) | |
copy constructor | |
mat3 (const mat3f &m) | |
copy constructor | |
vec3 | operator[] (const int i) const |
subscript operator (column getter) | |
vec3 | row (const int i) const |
row getter | |
vec3 | col (const int i) const |
column getter | |
operator mat2 () const | |
down cast operator | |
const double * | c_ptr () const |
const pointer to column-major array | |
operator const double * () const | |
cast operator to column-major array | |
void | fromOpenGL (const double m[9]) |
convert from 9-element column-major OpenGL matrix | |
double | det () const |
calculate determinant of 3x3 matrix | |
mat3 | transpose () const |
transpose 3x3 matrix | |
mat3 | invert () const |
invert 3x3 matrix | |
mat3 & | operator+= (const mat3 &m) |
inplace addition | |
mat3 & | operator*= (const mat3 &m) |
inplace multiplication | |
mat3 & | operator<<= (const mat3 &m) |
inplace multiplication (left-hand side) | |
mat3 & | operator>>= (const mat3 &m) |
inplace multiplication (right-hand side) | |
operator std::string () | |
string cast operator | |
Static Public Member Functions | |
static mat3 | columns (const vec3 &c1, const vec3 &c2, const vec3 &c3) |
construct matrix from column vectors | |
static mat3 | columns (double a, double b, double c, double d, double e, double f, double g, double h, double i) |
construct matrix from column vectors | |
static mat3 | rows (const vec3 &r1, const vec3 &r2, const vec3 &r3) |
construct matrix from row vectors | |
static mat3 | rows (double a, double b, double c, double d, double e, double f, double g, double h, double i) |
construct matrix from row vectors | |
static double | det (const mat3 &m) |
static version of determinant operation | |
static mat3 | transpose (const mat3 &m) |
static version of transpose operation | |
static mat3 | invert (const mat3 &m) |
static version of invert operation | |
static mat3 | scale (double s, double t, double r) |
create scaling matrix | |
static mat3 | scale (const vec3 &c) |
create scaling matrix | |
static mat3 | rotate (double angle, double vx, double vy, double vz) |
create rotation matrix More... | |
static mat3 | rotate (double angle, const vec3 &v) |
create rotation matrix More... | |
static mat3 | rotate (const vec3 &from, const vec3 &to) |
create rotation matrix More... | |
Protected Attributes | |
union { | |
}; | |
matrix elements | |
3x3 double matrix
create rotation matrix
create rotation matrix
|
inlinestatic |
create rotation matrix