FX::FXMat4d Class Reference

#include <FXMat4d.h>

List of all members.


Detailed Description

Double-precision 4x4 matrix.

Public Member Functions

 FXMat4d ()
 FXMat4d (FXdouble w)
 FXMat4d (FXdouble a00, FXdouble a01, FXdouble a02, FXdouble a03, FXdouble a10, FXdouble a11, FXdouble a12, FXdouble a13, FXdouble a20, FXdouble a21, FXdouble a22, FXdouble a23, FXdouble a30, FXdouble a31, FXdouble a32, FXdouble a33)
 FXMat4d (const FXVec4d &a, const FXVec4d &b, const FXVec4d &c, const FXVec4d &d)
 FXMat4d (const FXMat4d &other)
FXMat4doperator= (const FXMat4d &other)
FXMat4doperator= (FXdouble w)
FXMat4dset (const FXMat4d &other)
FXMat4dset (FXdouble w)
FXMat4dset (FXdouble a00, FXdouble a01, FXdouble a02, FXdouble a03, FXdouble a10, FXdouble a11, FXdouble a12, FXdouble a13, FXdouble a20, FXdouble a21, FXdouble a22, FXdouble a23, FXdouble a30, FXdouble a31, FXdouble a32, FXdouble a33)
FXMat4dset (const FXVec4d &a, const FXVec4d &b, const FXVec4d &c, const FXVec4d &d)
FXMat4doperator+= (const FXMat4d &w)
FXMat4doperator-= (const FXMat4d &w)
FXMat4doperator*= (FXdouble w)
FXMat4doperator*= (const FXMat4d &w)
FXMat4doperator/= (FXdouble w)
FXVec4doperator[] (FXint i)
const FXVec4doperator[] (FXint i) const
 operator FXdouble * ()
 operator const FXdouble * () const
FXMat4d operator- () const
FXMat4d operator+ (const FXMat4d &w) const
FXMat4d operator- (const FXMat4d &w) const
FXMat4d operator* (const FXMat4d &w) const
FXVec4d operator* (const FXVec4d &v) const
FXVec3d operator* (const FXVec3d &v) const
FXMat4deye ()
FXMat4dortho (FXdouble left, FXdouble right, FXdouble bottom, FXdouble top, FXdouble hither, FXdouble yon)
FXMat4dfrustum (FXdouble left, FXdouble right, FXdouble bottom, FXdouble top, FXdouble hither, FXdouble yon)
FXMat4dleft ()
FXMat4drot (const FXQuatd &q)
FXMat4drot (const FXVec3d &v, FXdouble c, FXdouble s)
FXMat4drot (const FXVec3d &v, FXdouble phi)
FXMat4dxrot (FXdouble c, FXdouble s)
FXMat4dxrot (FXdouble phi)
FXMat4dyrot (FXdouble c, FXdouble s)
FXMat4dyrot (FXdouble phi)
FXMat4dzrot (FXdouble c, FXdouble s)
FXMat4dzrot (FXdouble phi)
FXMat4dlook (const FXVec3d &eye, const FXVec3d &cntr, const FXVec3d &vup)
FXMat4dtrans (FXdouble tx, FXdouble ty, FXdouble tz)
FXMat4dtrans (const FXVec3d &v)
FXMat4dscale (FXdouble sx, FXdouble sy, FXdouble sz)
FXMat4dscale (FXdouble s)
FXMat4dscale (const FXVec3d &v)
FXdouble det () const
FXMat4d transpose () const
FXMat4d invert () const

Protected Attributes

FXVec4d m [4]

Friends

FXAPI FXMat4d operator* (FXdouble x, const FXMat4d &a)
FXAPI FXMat4d operator* (const FXMat4d &a, FXdouble x)
FXAPI FXMat4d operator/ (const FXMat4d &a, FXdouble x)
FXAPI FXMat4d operator/ (FXdouble x, const FXMat4d &a)
FXAPI FXStreamoperator<< (FXStream &store, const FXMat4d &m)
FXAPI FXStreamoperator>> (FXStream &store, FXMat4d &m)

Constructor & Destructor Documentation

FX::FXMat4d::FXMat4d (  )  [inline]

Constructors.


Member Function Documentation

FXMat4d& FX::FXMat4d::operator= ( const FXMat4d other  ) 

Assignment.

FXMat4d& FX::FXMat4d::set ( const FXMat4d other  ) 

Set value from another matrix.

FXMat4d& FX::FXMat4d::set ( FXdouble  w  ) 

Set value from scalar.

FXMat4d& FX::FXMat4d::set ( FXdouble  a00,
FXdouble  a01,
FXdouble  a02,
FXdouble  a03,
FXdouble  a10,
FXdouble  a11,
FXdouble  a12,
FXdouble  a13,
FXdouble  a20,
FXdouble  a21,
FXdouble  a22,
FXdouble  a23,
FXdouble  a30,
FXdouble  a31,
FXdouble  a32,
FXdouble  a33 
)

Set value from components.

FXMat4d& FX::FXMat4d::set ( const FXVec4d a,
const FXVec4d b,
const FXVec4d c,
const FXVec4d d 
)

Set value from four vectors.

FXMat4d& FX::FXMat4d::operator+= ( const FXMat4d w  ) 

Assignment operators.

FXVec4d& FX::FXMat4d::operator[] ( FXint  i  )  [inline]

Indexing.

FX::FXMat4d::operator FXdouble * (  )  [inline]

Conversion.

FXMat4d FX::FXMat4d::operator- (  )  const

Unary minus.

FXMat4d FX::FXMat4d::operator+ ( const FXMat4d w  )  const

Matrix and matrix.

FXVec4d FX::FXMat4d::operator* ( const FXVec4d v  )  const

Multiply matrix and vector.

FXMat4d& FX::FXMat4d::eye (  ) 

Set identity matrix.

FXMat4d& FX::FXMat4d::ortho ( FXdouble  left,
FXdouble  right,
FXdouble  bottom,
FXdouble  top,
FXdouble  hither,
FXdouble  yon 
)

Orthographic projection.

FXMat4d& FX::FXMat4d::frustum ( FXdouble  left,
FXdouble  right,
FXdouble  bottom,
FXdouble  top,
FXdouble  hither,
FXdouble  yon 
)

Perspective projection.

FXMat4d& FX::FXMat4d::left (  ) 

Multiply by left-hand matrix.

FXMat4d& FX::FXMat4d::rot ( const FXQuatd q  ) 

Multiply by rotation about unit-quaternion.

FXMat4d& FX::FXMat4d::rot ( const FXVec3d v,
FXdouble  c,
FXdouble  s 
)

Multiply by rotation c,s about axis.

FXMat4d& FX::FXMat4d::rot ( const FXVec3d v,
FXdouble  phi 
)

Multiply by rotation of phi about axis.

FXMat4d& FX::FXMat4d::xrot ( FXdouble  c,
FXdouble  s 
)

Multiply by x-rotation.

FXMat4d& FX::FXMat4d::yrot ( FXdouble  c,
FXdouble  s 
)

Multiply by y-rotation.

FXMat4d& FX::FXMat4d::zrot ( FXdouble  c,
FXdouble  s 
)

Multiply by z-rotation.

FXMat4d& FX::FXMat4d::look ( const FXVec3d eye,
const FXVec3d cntr,
const FXVec3d vup 
)

Look at.

FXMat4d& FX::FXMat4d::trans ( FXdouble  tx,
FXdouble  ty,
FXdouble  tz 
)

Multiply by translation.

FXMat4d& FX::FXMat4d::scale ( FXdouble  sx,
FXdouble  sy,
FXdouble  sz 
)

Multiply by scaling.

FXdouble FX::FXMat4d::det (  )  const

Determinant.

FXMat4d FX::FXMat4d::transpose (  )  const

Transpose.

FXMat4d FX::FXMat4d::invert (  )  const

Invert.


Friends And Related Function Documentation

FXAPI FXMat4d operator* ( FXdouble  x,
const FXMat4d a 
) [friend]

Matrix and scalar.

FXAPI FXStream& operator<< ( FXStream store,
const FXMat4d m 
) [friend]

Save to a stream.

FXAPI FXStream& operator>> ( FXStream store,
FXMat4d m 
) [friend]

Load from a stream.


The documentation for this class was generated from the following file:

(C) 2002-2008 Niall Douglas. Some parts (C) to assorted authors.
Generated on Fri Jun 13 22:03:45 2008 for TnFOX by doxygen v1.5.6