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_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 &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_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]

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 Fri May 13 15:16:09 2005 for producer by  doxygen 1.4.2