Public Member Functions | Protected Attributes

Matrix3Indirect Class Reference

Search for all occurrences

Detailed Description

See also:
Class Matrix3, Structure TMComponentsArg.

Description:
This class is available in release 4.0 and later only.

An object of this class represents a Matrix3. However, its value can be obtained only by invoking the operator(). Derived classes may override this operator to delay its computation until operator() is called.
Data Members:
protected:

Matrix3 mat;

The matrix itself.

#include <control.h>

Inheritance diagram for Matrix3Indirect:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  Matrix3Indirect ()
  Matrix3Indirect (const Matrix3 &m)
virtual  ~Matrix3Indirect ()
virtual const Matrix3 operator() () const
virtual void  Set (const Matrix3 &m)
virtual CoreExport
Matrix3Indirect
Clone () const
virtual void  PreTranslate (const Point3 &p)
virtual void  PreRotateX (float x)
virtual void  PreRotateY (float y)
virtual void  PreRotateZ (float z)
virtual void  PreRotate (const Quat &q)

Protected Attributes

Matrix3  mat

Constructor & Destructor Documentation

Matrix3Indirect ( ) [inline]
Remarks:
Constructor.
Default Implementation:
{}
{}
Matrix3Indirect ( const Matrix3 m ) [inline]
Remarks:
Constructor. This matrix is initialized from the matrix passed.
Default Implementation:
{}
:mat(m){}
virtual ~Matrix3Indirect ( ) [inline, virtual]
Remarks:
Destructor.
Default Implementation:
{}
{}

Member Function Documentation

virtual const Matrix3& operator() ( ) const [inline, virtual]
Remarks:
Assignment operator.
Default Implementation:
{ return mat; }

Reimplemented in DelayedMatrix3.

{ return mat; }
virtual void Set ( const Matrix3 m ) [inline, virtual]
Remarks:
Set the matrix to the specified matrix.
Parameters:
const Matrix3& m

The matrix to set.
Default Implementation:
{ mat = m; }

Reimplemented in DelayedMatrix3, and DelayedNodeMat.

{ mat = m; }
virtual CoreExport Matrix3Indirect* Clone ( ) const [virtual]
Remarks:
Clone the matrix.
Returns:
A pointer to a new clone of the matrix.
Default Implementation:
{return new Matrix3Indirect(mat);}

Reimplemented in DelayedMatrix3, and DelayedNodeMat.

virtual void PreTranslate ( const Point3 p ) [inline, virtual]
Remarks:
Pre-translate the matrix by the specified coordinate.
Parameters:
const Point3& p

The coordinate to pre-translate by.
Default Implementation:
{ mat.PreTranslate(p);}

Reimplemented in DelayedMatrix3.

{ mat.PreTranslate(p);}
virtual void PreRotateX ( float  x ) [inline, virtual]
Remarks:
Pre-rotate the X axis by the specified amount.
Parameters:
float x

The amount of rotation.
Default Implementation:
{ mat.PreRotateX(x); }

Reimplemented in DelayedMatrix3.

{ mat.PreRotateX(x); }
virtual void PreRotateY ( float  y ) [inline, virtual]
Remarks:
Pre-rotate the Y axis by the specified amount.
Parameters:
float y

The amount of rotation.
Default Implementation:
{ mat.PreRotateY(y); }

Reimplemented in DelayedMatrix3.

{ mat.PreRotateY(y); }
virtual void PreRotateZ ( float  z ) [inline, virtual]
Remarks:
Pre-rotate the Z axis by the specified amount.
Parameters:
float z

The amount of rotation.
Default Implementation:
{ mat.PreRotateZ(z); }

Reimplemented in DelayedMatrix3.

{ mat.PreRotateZ(z); }
virtual void PreRotate ( const Quat q ) [inline, virtual]
Remarks:
Pre-rotate the matrix by the specified quaternion.
Parameters:
const Quat& q

The quaternion to pre-rotate by.
Default Implementation:
{PreRotateMatrix(mat,q);}

Reimplemented in DelayedMatrix3.

{PreRotateMatrix(mat,q);}

Member Data Documentation

Matrix3 mat [protected]

Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect
Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect Matrix3Indirect