Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXDHMat Class Reference

Homogeneous matrix (double-precision version).

#include <FXDHMat.h>

List of all members.

Public Methods

 FXDHMat ()
 Constructors.

 FXDHMat (const FXDHMat &other)
 FXDHMat (FXdouble w)
 FXDHMat (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)
 FXDHMat (const FXDHVec &a, const FXDHVec &b, const FXDHVec &c, const FXDHVec &d)
FXDHMat & operator= (const FXDHMat &other)
 Assignment operators.

FXDHMat & operator= (FXdouble w)
FXDHMat & operator+= (const FXDHMat &w)
FXDHMat & operator-= (const FXDHMat &w)
FXDHMat & operator *= (FXdouble w)
FXDHMat & operator *= (const FXDHMat &w)
FXDHMat & operator/= (FXdouble w)
FXDHVecoperator[] (FXint i)
 Return a non-const reference to the ith row.

const FXDHVecoperator[] (FXint i) const
 Return a const reference to the ith row.

 operator FXdouble * ()
 Conversion.

 operator const FXdouble * () const
FXDHMat & eye ()
 Set to identity matrix.

FXDHMat & ortho (FXdouble left, FXdouble right, FXdouble bottom, FXdouble top, FXdouble hither, FXdouble yon)
 Orthographic projection.

FXDHMat & frustum (FXdouble left, FXdouble right, FXdouble bottom, FXdouble top, FXdouble hither, FXdouble yon)
 Perspective projection.

FXDHMat & left ()
 Multiply by left-hand matrix.

FXDHMat & rot (const FXDQuat &q)
 Multiply by rotation about unit-quaternion.

FXDHMat & rot (const FXDVec &v, FXdouble c, FXdouble s)
 Multiply by rotation c,s about axis.

FXDHMat & rot (const FXDVec &v, FXdouble phi)
 Multiply by rotation of phi about axis.

FXDHMat & xrot (FXdouble c, FXdouble s)
 Multiply by x-rotation.

FXDHMat & xrot (FXdouble phi)
FXDHMat & yrot (FXdouble c, FXdouble s)
 Multiply by y-rotation.

FXDHMat & yrot (FXdouble phi)
FXDHMat & zrot (FXdouble c, FXdouble s)
 Multiply by z-rotation.

FXDHMat & zrot (FXdouble phi)
FXDHMat & look (const FXDVec &eye, const FXDVec &cntr, const FXDVec &vup)
 Look at.

FXDHMat & trans (FXdouble tx, FXdouble ty, FXdouble tz)
 Multiply by translation.

FXDHMat & trans (const FXDVec &v)
FXDHMat & scale (FXdouble sx, FXdouble sy, FXdouble sz)
 Multiply by scaling.

FXDHMat & scale (FXdouble s)
FXDHMat & scale (const FXDVec &v)

Friends

FXAPI FXDHMat operator+ (const FXDHMat &a, const FXDHMat &b)
 Other operators.

FXAPI FXDHMat operator- (const FXDHMat &a, const FXDHMat &b)
FXAPI FXDHMat operator- (const FXDHMat &a)
FXAPI FXDHMat operator * (const FXDHMat &a, const FXDHMat &b)
FXAPI FXDHMat operator * (FXdouble x, const FXDHMat &a)
FXAPI FXDHMat operator * (const FXDHMat &a, FXdouble x)
FXAPI FXDHMat operator/ (const FXDHMat &a, FXdouble x)
FXAPI FXDHMat operator/ (FXdouble x, const FXDHMat &a)
FXAPI FXDHVec operator * (const FXDHVec &v, const FXDHMat &m)
 Multiply matrix and vector.

FXAPI FXDHVec operator * (const FXDHMat &a, const FXDHVec &v)
FXAPI FXDVec operator * (const FXDVec &v, const FXDHMat &m)
 Mutiply matrix and vector, for projective matrix.

FXAPI FXDVec operator * (const FXDHMat &a, const FXDVec &v)
FXAPI FXdouble det (const FXDHMat &m)
 Determinant.

FXAPI FXDHMat transpose (const FXDHMat &m)
 Transpose.

FXAPI FXDHMat invert (const FXDHMat &m)
 Invert.

FXAPI FXStreamoperator<< (FXStream &store, const FXDHMat &m)
 Save to a stream.

FXAPI FXStreamoperator>> (FXStream &store, FXDHMat &m)
 Load from a stream.