Public Types | |
typedef double | value_type |
Public Member Functions | |
Matrix () | |
Matrix (float const *const ptr) | |
Matrix (double const *const ptr) | |
Matrix (value_type a00, value_type a01, value_type a02, value_type a03, value_type a10, value_type a11, value_type a12, value_type a13, value_type a20, value_type a21, value_type a22, value_type a23, value_type a30, value_type a31, value_type a32, value_type a33) | |
void | makeIdentity () |
void | set (value_type a00, value_type a01, value_type a02, value_type a03, value_type a10, value_type a11, value_type a12, value_type a13, value_type a20, value_type a21, value_type a22, value_type a23, value_type a30, value_type a31, value_type a32, value_type a33) |
void | set (float const *const ptr) |
void | set (double const *const ptr) |
value_type * | ptr () |
const value_type * | ptr () const |
void | preMult (const Matrix &other) |
void | postMult (const Matrix &other) |
Vec3 | preMult (const Vec3 &v) const |
void | makeLookAt (const Vec3 &eye, const Vec3 ¢er, const Vec3 &up) |
void | makeTranslate (value_type x, value_type y, value_type z) |
void | makeRotate (value_type angle, value_type x, value_type y, value_type z) |
void | makeScale (value_type x, value_type y, value_type z) |
void | mult (const Matrix &lhs, const Matrix &rhs) |
Matrix | operator * (const Matrix &m) const |
void | operator *= (const Matrix &other) |
bool | invert (const Matrix &mat) |
value_type & | operator() (int row, int col) |
value_type | operator() (int row, int col) const |
void | glLoadMatrix () const |
void | glMultMatrix () const |
Static Public Member Functions | |
static Matrix | translate (const Vec3 &) |
static Matrix | translate (value_type x, value_type y, value_type z) |
static Matrix | rotate (value_type angle, value_type x, value_type y, value_type z) |
static Matrix | rotate (value_type angle, const Vec3 &axis) |
static Matrix | scale (value_type sx, value_type sy, value_type sz) |
static void | glLoadMatrix (const float *ptr) |
static void | glLoadMatrix (const double *ptr) |
static void | glMultMatrix (const float *ptr) |
static void | glMultMatrix (const double *ptr) |
Protected Member Functions | |
value_type | SGL_ABS (value_type a) |
Protected Attributes | |
value_type | _mat [4][4] |
typedef double Producer::Matrix::value_type |
Producer::Matrix::Matrix | ( | ) | [inline] |
Producer::Matrix::Matrix | ( | float const *const | ptr | ) | [inline] |
Producer::Matrix::Matrix | ( | double const *const | ptr | ) | [inline] |
Producer::Matrix::Matrix | ( | value_type | a00, | |
value_type | a01, | |||
value_type | a02, | |||
value_type | a03, | |||
value_type | a10, | |||
value_type | a11, | |||
value_type | a12, | |||
value_type | a13, | |||
value_type | a20, | |||
value_type | a21, | |||
value_type | a22, | |||
value_type | a23, | |||
value_type | a30, | |||
value_type | a31, | |||
value_type | a32, | |||
value_type | a33 | |||
) | [inline] |
void Producer::Matrix::makeIdentity | ( | ) | [inline] |
void Producer::Matrix::set | ( | value_type | a00, | |
value_type | a01, | |||
value_type | a02, | |||
value_type | a03, | |||
value_type | a10, | |||
value_type | a11, | |||
value_type | a12, | |||
value_type | a13, | |||
value_type | a20, | |||
value_type | a21, | |||
value_type | a22, | |||
value_type | a23, | |||
value_type | a30, | |||
value_type | a31, | |||
value_type | a32, | |||
value_type | a33 | |||
) | [inline] |
void Producer::Matrix::set | ( | float const *const | ptr | ) | [inline] |
void Producer::Matrix::set | ( | double const *const | ptr | ) | [inline] |
value_type* Producer::Matrix::ptr | ( | ) | [inline] |
const value_type* Producer::Matrix::ptr | ( | ) | const [inline] |
void Producer::Matrix::preMult | ( | const Matrix & | other | ) | [inline] |
void Producer::Matrix::postMult | ( | const Matrix & | other | ) | [inline] |
void Producer::Matrix::makeLookAt | ( | const Vec3 & | eye, | |
const Vec3 & | center, | |||
const Vec3 & | up | |||
) | [inline] |
void Producer::Matrix::makeTranslate | ( | value_type | x, | |
value_type | y, | |||
value_type | z | |||
) | [inline] |
void Producer::Matrix::makeRotate | ( | value_type | angle, | |
value_type | x, | |||
value_type | y, | |||
value_type | z | |||
) | [inline] |
void Producer::Matrix::makeScale | ( | value_type | x, | |
value_type | y, | |||
value_type | z | |||
) | [inline] |
void Producer::Matrix::operator *= | ( | const Matrix & | other | ) | [inline] |
bool Producer::Matrix::invert | ( | const Matrix & | mat | ) | [inline] |
Matrix Producer::Matrix::translate | ( | value_type | x, | |
value_type | y, | |||
value_type | z | |||
) | [inline, static] |
Matrix Producer::Matrix::rotate | ( | value_type | angle, | |
value_type | x, | |||
value_type | y, | |||
value_type | z | |||
) | [inline, static] |
Matrix Producer::Matrix::rotate | ( | value_type | angle, | |
const Vec3 & | axis | |||
) | [inline, static] |
Matrix Producer::Matrix::scale | ( | value_type | sx, | |
value_type | sy, | |||
value_type | sz | |||
) | [inline, static] |
value_type& Producer::Matrix::operator() | ( | int | row, | |
int | col | |||
) | [inline] |
value_type Producer::Matrix::operator() | ( | int | row, | |
int | col | |||
) | const [inline] |
void Producer::Matrix::glLoadMatrix | ( | ) | const [inline] |
call glLoadMatixf with this matrix.
void Producer::Matrix::glMultMatrix | ( | ) | const [inline] |
call glMultMatixf with this matrix.
static void Producer::Matrix::glLoadMatrix | ( | const float * | ptr | ) | [inline, static] |
static void Producer::Matrix::glLoadMatrix | ( | const double * | ptr | ) | [inline, static] |
static void Producer::Matrix::glMultMatrix | ( | const float * | ptr | ) | [inline, static] |
static void Producer::Matrix::glMultMatrix | ( | const double * | ptr | ) | [inline, static] |
value_type Producer::Matrix::SGL_ABS | ( | value_type | a | ) | [inline, protected] |
value_type Producer::Matrix::_mat[4][4] [protected] |