Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

Producer::Matrix Class Reference

List of all members.

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_typeptr ()
const value_typeptr () const
void preMult (const Matrix &other)
void postMult (const Matrix &other)
Vec3 preMult (const Vec3 &v) const
void makeLookAt (const Vec3 &eye, const Vec3 &center, 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_typeoperator() (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]

Member Typedef Documentation

typedef double Producer::Matrix::value_type
 


Constructor & Destructor Documentation

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]
 


Member Function Documentation

static void Producer::Matrix::glLoadMatrix const double *  ptr  )  [inline, static]
 

static void Producer::Matrix::glLoadMatrix const float *  ptr  )  [inline, static]
 

void Producer::Matrix::glLoadMatrix  )  const [inline]
 

call glLoadMatixf with this matrix.

static void Producer::Matrix::glMultMatrix const double *  ptr  )  [inline, static]
 

static void Producer::Matrix::glMultMatrix const float *  ptr  )  [inline, static]
 

void Producer::Matrix::glMultMatrix  )  const [inline]
 

call glMultMatixf with this matrix.

bool Producer::Matrix::invert const Matrix mat  )  [inline]
 

void Producer::Matrix::makeIdentity  )  [inline]
 

void Producer::Matrix::makeLookAt const Vec3 eye,
const Vec3 center,
const Vec3 up
[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::makeTranslate value_type  x,
value_type  y,
value_type  z
[inline]
 

void Producer::Matrix::mult const Matrix lhs,
const Matrix rhs
[inline]
 

Matrix Producer::Matrix::operator * const Matrix m  )  const [inline]
 

void Producer::Matrix::operator *= const Matrix other  )  [inline]
 

value_type Producer::Matrix::operator() int  row,
int  col
const [inline]
 

value_type& Producer::Matrix::operator() int  row,
int  col
[inline]
 

void Producer::Matrix::postMult const Matrix other  )  [inline]
 

Vec3 Producer::Matrix::preMult const Vec3 v  )  const [inline]
 

void Producer::Matrix::preMult const Matrix other  )  [inline]
 

const value_type* Producer::Matrix::ptr  )  const [inline]
 

value_type* Producer::Matrix::ptr  )  [inline]
 

Matrix Producer::Matrix::rotate value_type  angle,
const Vec3 axis
[inline, static]
 

Matrix Producer::Matrix::rotate value_type  angle,
value_type  x,
value_type  y,
value_type  z
[inline, static]
 

Matrix Producer::Matrix::scale value_type  sx,
value_type  sy,
value_type  sz
[inline, static]
 

void Producer::Matrix::set double const *const   ptr  )  [inline]
 

void Producer::Matrix::set float const *const   ptr  )  [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]
 

value_type Producer::Matrix::SGL_ABS value_type  a  )  [inline, protected]
 

Matrix Producer::Matrix::translate value_type  x,
value_type  y,
value_type  z
[inline, static]
 

Matrix Producer::Matrix::translate const Vec3  )  [inline, static]
 


Member Data Documentation

value_type Producer::Matrix::_mat[4][4] [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Jun 7 04:50:15 2006 for Producer by  doxygen 1.4.4