TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | List of all members
cMatrixStack< T, B > Class Template Reference
Inheritance diagram for cMatrixStack< T, B >:

Public Member Functions

 cMatrixStack ()
 
 ~cMatrixStack ()
 
void MultMatrix (const sMatrix< T > &Mat)
 Determines the product of the current matrix and the given matrix. This method right-multiplies the given matrix to the current matrix (transformation is about the current world origin). More...
 
void MultMatrixLocal (const sMatrix< T > &Mat)
 Determines the product of the given matrix and the current matrix. This method left-multiplies the given matrix to the current matrix (transformation is about the local origin of the object). More...
 
sMatrix< T > & GetTop ()
 Retrieves the current matrix at the top of the stack. More...
 
const sMatrix< T > & GetTop () const
 Retrieves the current matrix at the top of the stack. More...
 
void SetTop (const sMatrixf &aMtx)
 Set the value of the matrix at the top of the stack. More...
 
void LoadIdentity ()
 Loads identity in the current matrix. More...
 
void LoadMatrix (const sMatrix< T > &Mat)
 Loads the given matrix into the current matrix. More...
 
void Pop ()
 Removes the current matrix from the top of the stack. More...
 
void Push ()
 Adds a the current to the stack. More...
 
void RotateAxis (const sVec3< T > &V, T Angle)
 Determines the product of the current matrix and the computed rotation matrix. This method right-multiplies the current matrix with the computed rotation matrix, counterclockwise about the given axis with the given angle (rotation is about the current world origin). More...
 
void RotateAxisLocal (const sVec3< T > &V, T Angle)
 Determines the product of the computed rotation matrix and the current matrix. This method left-multiplies the current matrix with the computed rotation matrix, counterclockwise about the given axis with the given angle (rotation is about the local origin of the object). More...
 
void RotateYawPitchRoll (T Yaw, T Pitch, T Roll)
 Determines the product of the current matrix and the computed rotation matrix (composed of a given yaw, pitch, and roll). This method right-multiplies the current matrix with the computed rotation matrix. All angles are counterclockwise and rotation is about the current world origin. More...
 
void RotateYawPitchRollLocal (T Yaw, T Pitch, T Roll)
 Determines the product of the computed rotation matrix (composed of a given yaw, pitch, and roll) and the current matrix. This method left-multiplies the current matrix with the computed rotation matrix. All angles are counterclockwise and rotation is about the local origin of the object. More...
 
void Scale (T x, T y, T z)
 Determines the product of the current matrix and the computed scale matrix composed from the given point (x, y, and z). This method right-multiplies the current matrix with the computed scale matrix (transformation is about the current world origin). More...
 
void ScaleLocal (T x, T y, T z)
 Determines the product of the computed scale matrix composed from the given point (x, y, and z) and the current matrix. This method left-multiplies the current matrix with the computed scale matrix (transformation is about the local origin of the object). More...
 
void Translate (T x, T y, T z)
 Determines the product of the current matrix and the computed translation matrix determined by the given factors (x, y, and z). This method right-multiplies the current matrix with the computed translation matrix (transformation is about the current world origin). More...
 
void TranslateLocal (T x, T y, T z)
 Determines the product of the computed translation matrix determined by the given factors (x, y, and z) and the current matrix. This method left-multiplies the current matrix with the computed translation matrix (transformation is about the local origin of the object). More...
 

Constructor & Destructor Documentation

Member Function Documentation

void MultMatrix ( const sMatrix< T > &  Mat)

Determines the product of the current matrix and the given matrix. This method right-multiplies the given matrix to the current matrix (transformation is about the current world origin).

void MultMatrixLocal ( const sMatrix< T > &  Mat)

Determines the product of the given matrix and the current matrix. This method left-multiplies the given matrix to the current matrix (transformation is about the local origin of the object).

sMatrix<T>& GetTop ( )

Retrieves the current matrix at the top of the stack.

const sMatrix<T>& GetTop ( ) const

Retrieves the current matrix at the top of the stack.

void SetTop ( const sMatrixf aMtx)

Set the value of the matrix at the top of the stack.

void LoadIdentity ( )

Loads identity in the current matrix.

void LoadMatrix ( const sMatrix< T > &  Mat)

Loads the given matrix into the current matrix.

void Pop ( )

Removes the current matrix from the top of the stack.

void Push ( )

Adds a the current to the stack.

void RotateAxis ( const sVec3< T > &  V,
Angle 
)

Determines the product of the current matrix and the computed rotation matrix. This method right-multiplies the current matrix with the computed rotation matrix, counterclockwise about the given axis with the given angle (rotation is about the current world origin).

void RotateAxisLocal ( const sVec3< T > &  V,
Angle 
)

Determines the product of the computed rotation matrix and the current matrix. This method left-multiplies the current matrix with the computed rotation matrix, counterclockwise about the given axis with the given angle (rotation is about the local origin of the object).

void RotateYawPitchRoll ( Yaw,
Pitch,
Roll 
)

Determines the product of the current matrix and the computed rotation matrix (composed of a given yaw, pitch, and roll). This method right-multiplies the current matrix with the computed rotation matrix. All angles are counterclockwise and rotation is about the current world origin.

void RotateYawPitchRollLocal ( Yaw,
Pitch,
Roll 
)

Determines the product of the computed rotation matrix (composed of a given yaw, pitch, and roll) and the current matrix. This method left-multiplies the current matrix with the computed rotation matrix. All angles are counterclockwise and rotation is about the local origin of the object.

void Scale ( x,
y,
z 
)

Determines the product of the current matrix and the computed scale matrix composed from the given point (x, y, and z). This method right-multiplies the current matrix with the computed scale matrix (transformation is about the current world origin).

void ScaleLocal ( x,
y,
z 
)

Determines the product of the computed scale matrix composed from the given point (x, y, and z) and the current matrix. This method left-multiplies the current matrix with the computed scale matrix (transformation is about the local origin of the object).

void Translate ( x,
y,
z 
)

Determines the product of the current matrix and the computed translation matrix determined by the given factors (x, y, and z). This method right-multiplies the current matrix with the computed translation matrix (transformation is about the current world origin).

void TranslateLocal ( x,
y,
z 
)

Determines the product of the computed translation matrix determined by the given factors (x, y, and z) and the current matrix. This method left-multiplies the current matrix with the computed translation matrix (transformation is about the local origin of the object).