Contents Functions Classes Topics User Forum CVS

G3D::Matrix4 Class Reference

#include <Matrix4.h>

List of all members.

Public Member Functions

 Matrix4 (float r1c1, float r1c2, float r1c3, float r1c4, float r2c1, float r2c2, float r2c3, float r2c4, float r3c1, float r3c2, float r3c3, float r3c4, float r4c1, float r4c2, float r4c3, float r4c4)
 Matrix4 (const float *init)
 Matrix4 (const class CoordinateFrame &c)
 Matrix4 (const double *init)
 Matrix4 ()
CoordinateFrame approxCoordinateFrame () const
float * operator[] (int r)
const float * operator[] (int r) const
 operator float * ()
 operator const float * () const
Matrix4 operator * (const Matrix4 &other) const
void setRow (int r, const class Vector4 &v)
void setColumn (int c, const Vector4 &v)
Vector4 getRow (int r) const
Vector4 getColumn (int c) const
Matrix4 operator * (const float s) const
Vector4 operator * (const Vector4 &vector) const
Matrix4 transpose () const
bool operator!= (const Matrix4 &other) const
bool operator== (const Matrix4 &other) const
float determinant () const
Matrix4 inverse () const
Matrix4 adjoint () const
Matrix4 cofactor () const
void serialize (class BinaryOutput &b) const
void deserialize (class BinaryInput &b)
std::string toString () const

Static Public Member Functions

static const Matrix4identity ()
static const Matrix4zero ()
static Matrix4 orthogonalProjection (float left, float right, float bottom, float top, float nearval, float farval)
static Matrix4 orthogonalProjection (const class Rect2D &rect, float nearval, float farval)
static Matrix4 perspectiveProjection (float left, float right, float bottom, float top, float nearval, float farval)

Static Public Attributes

static const Matrix4 IDENTITY
static const Matrix4 ZERO


Detailed Description

A 4x4 matrix.

See also G3D::CoordinateFrame, G3D::Matrix3, G3D::Quat


Constructor & Destructor Documentation

G3D::Matrix4::Matrix4 float  r1c1,
float  r1c2,
float  r1c3,
float  r1c4,
float  r2c1,
float  r2c2,
float  r2c3,
float  r2c4,
float  r3c1,
float  r3c2,
float  r3c3,
float  r3c4,
float  r4c1,
float  r4c2,
float  r4c3,
float  r4c4
 

G3D::Matrix4::Matrix4 const float *  init  ) 
 

init should be row major.

G3D::Matrix4::Matrix4 const class CoordinateFrame c  ) 
 

G3D::Matrix4::Matrix4 const double *  init  ) 
 

G3D::Matrix4::Matrix4  ) 
 


Member Function Documentation

Matrix4 G3D::Matrix4::adjoint  )  const
 

Transpose of the cofactor matrix (used in computing the inverse). Note: This is in fact only one type of adjoint. More generally, an adjoint of a matrix is any mapping of a matrix which possesses certain properties. This returns the so-called adjugate or classical adjoint.

class CoordinateFrame G3D::Matrix4::approxCoordinateFrame  )  const
 

Produces an RT transformation that nearly matches this Matrix4. Because a Matrix4 may not be precisely a rotation and translation, this may introduce error.

Matrix4 G3D::Matrix4::cofactor  )  const
 

void G3D::Matrix4::deserialize class BinaryInput b  ) 
 

float G3D::Matrix4::determinant  )  const
 

Vector4 G3D::Matrix4::getColumn int  c  )  const
 

Vector4 G3D::Matrix4::getRow int  r  )  const
 

static const Matrix4& G3D::Matrix4::identity  )  [static]
 

Matrix4 G3D::Matrix4::inverse  )  const
 

Vector4 G3D::Matrix4::operator * const Vector4 vector  )  const
 

Matrix4 G3D::Matrix4::operator * const float  s  )  const
 

Matrix4 G3D::Matrix4::operator * const Matrix4 other  )  const
 

G3D::Matrix4::operator const float *  )  const [inline]
 

G3D::Matrix4::operator float *  )  [inline]
 

bool G3D::Matrix4::operator!= const Matrix4 other  )  const
 

bool G3D::Matrix4::operator== const Matrix4 other  )  const
 

const float* G3D::Matrix4::operator[] int  r  )  const [inline]
 

float* G3D::Matrix4::operator[] int  r  )  [inline]
 

static Matrix4 G3D::Matrix4::orthogonalProjection const class Rect2D rect,
float  nearval,
float  farval
[static]
 

static Matrix4 G3D::Matrix4::orthogonalProjection float  left,
float  right,
float  bottom,
float  top,
float  nearval,
float  farval
[static]
 

Constructs an orthogonal projection matrix from the given parameters. Near and far are the NEGATIVE of the near and far plane Z values (to follow OpenGL conventions).

static Matrix4 G3D::Matrix4::perspectiveProjection float  left,
float  right,
float  bottom,
float  top,
float  nearval,
float  farval
[static]
 

void G3D::Matrix4::serialize class BinaryOutput b  )  const
 

Serializes row-major

void G3D::Matrix4::setColumn int  c,
const Vector4 v
 

void G3D::Matrix4::setRow int  r,
const class Vector4 v
 

std::string G3D::Matrix4::toString  )  const
 

Matrix4 G3D::Matrix4::transpose  )  const
 

static const Matrix4& G3D::Matrix4::zero  )  [static]
 


Member Data Documentation

const Matrix4 G3D::Matrix4::IDENTITY [static]
 

Deprecated:
Use Matrix4::identity()

const Matrix4 G3D::Matrix4::ZERO [static]
 

Deprecated:
Use Matrix4::zero()


The documentation for this class was generated from the following file:
Generated on Mon Jul 17 11:50:46 2006 for G3D by doxygen 1.4.5
Hosted by SourceForge.net Logo