Main Page   Class Hierarchy   Compound List   File List   Compound Members  

freecloth::GeMatrix4 Class Reference

A simple 4x4 matrix class. More...

#include <freecloth/geom/geMatrix4.h>

List of all members.

Public Member Functions

 GeMatrix4 (Float entry00, Float entry01, Float entry02, Float entry03, Float entry10, Float entry11, Float entry12, Float entry13, Float entry20, Float entry21, Float entry22, Float entry23, Float entry30, Float entry31, Float entry32, Float entry33)
Float operator() (UInt32 row, UInt32 col) const
Float & operator() (UInt32 row, UInt32 col)
GeMatrix4 & operator *= (const GeMatrix4 &)
GeMatrix4 & operator *= (Float)
GeMatrix4 & operator+= (const GeMatrix4 &)
GeMatrix4 & operator-= (const GeMatrix4 &)
GeMatrix4 operator * (const GeMatrix4 &) const
GeVector operator * (const GeVector &) const
GePoint operator * (const GePoint &) const
GeMatrix4 operator * (Float) const
GeMatrix4 operator+ (const GeMatrix4 &) const
GeMatrix4 operator- (const GeMatrix4 &) const
bool operator== (const GeMatrix4 &) const
bool operator!= (const GeMatrix4 &) const
Float getTrace () const
 Sum of diagonal elements.

const Float * asColMajor () const
GeMatrix4 getTranspose () const

Static Public Member Functions

GeMatrix4 colMajor (const Float data[16])
 Named constructor: construct from float array, column-major storage.

GeMatrix4 rowMajor (const Float data[16])
 Named constructor: construct from float array, row-major storage.

GeMatrix4 rotation (Float entry00, Float entry01, Float entry02, Float entry10, Float entry11, Float entry12, Float entry20, Float entry21, Float entry22)
GeMatrix4 translation (const GeVector &)
GeMatrix4 scaling (Float sx, Float sy, Float sz)
GeMatrix4 outerProduct (const GeVector &a, const GeVector &b)
 Named constructor: create matrix M = a * b^T.

GeMatrix4 from3x3 (const GeMatrix3 &)

Static Public Attributes

const GeMatrix4 ZERO
const GeMatrix4 IDENTITY


Detailed Description

A simple 4x4 matrix class.

Definition at line 40 of file geMatrix4.h.


Member Function Documentation

GeMatrix4 freecloth::GeMatrix4::from3x3 const GeMatrix3   [inline, static]
 

Named constructor: embeds 3x3 matrix in the top-left of an identity matrix

Definition at line 103 of file geMatrix4.inline.h.

GePoint freecloth::GeMatrix4::operator * const GePoint   const [inline]
 

Matrix-vector multiplication. Treats point as 4x1, with last element one.

Definition at line 207 of file geMatrix4.inline.h.

References freecloth::GePoint::_x, freecloth::GePoint::_y, and freecloth::GePoint::_z.

GeVector freecloth::GeMatrix4::operator * const GeVector   const [inline]
 

Matrix-vector multiplication. Treats vector as 4x1, with last element zero.

Definition at line 195 of file geMatrix4.inline.h.

References freecloth::GeVector::_x, freecloth::GeVector::_y, and freecloth::GeVector::_z.

GeMatrix4 freecloth::GeMatrix4::rotation Float    entry00,
Float    entry01,
Float    entry02,
Float    entry10,
Float    entry11,
Float    entry12,
Float    entry20,
Float    entry21,
Float    entry22
[inline, static]
 

Named constructor: construct a rotation matrix: the top-left 3x3 block filled with the given data.

Definition at line 52 of file geMatrix4.inline.h.

GeMatrix4 freecloth::GeMatrix4::scaling Float    sx,
Float    sy,
Float    sz
[inline, static]
 

Named constructor: construct a scaling matrix, with [sx sy sz 1] along the main diagonal

Definition at line 79 of file geMatrix4.inline.h.

GeMatrix4 freecloth::GeMatrix4::translation const GeVector   [inline, static]
 

Named constructor: construct a translation matrix: an identity matrix, plus the given vector in the fourth column.

Definition at line 67 of file geMatrix4.inline.h.

References freecloth::GeVector::_x, freecloth::GeVector::_y, and freecloth::GeVector::_z.


The documentation for this class was generated from the following files:
Generated on Wed Apr 23 15:58:47 2003 for Freecloth by doxygen1.3-rc3