All Frameworks  Class Hierarchy  This Framework  Previous  Next  Indexes

VisualizationBase Class CAT4x4Matrix

System.IUnknown
  |
  +---System.IDispatch
    |
    +---System.CATBaseUnknown
      |
      +---CAT4x4Matrix
 

Usage: you must use this class as is. You should never derive it.


public class CAT4x4Matrix

Class to create a 3D matrix.
Role: This object manages matrix transformations appliables to 3D elements, in the homogeneous coordinate system, enabling so translations and rotations to be viewed as matrix operations.
The CAT4x4Matrix is commonly used to define the transformation that is to be applied to CAT3DBagRep objects.


Constructor and Destructor Index


o CAT4x4Matrix(CAT4x4Matrix&)
Constructs an 3D matrix from an other 3D matrix.
o CAT4x4Matrix(CATMathAxis&)
Constructs a 3D matrix from axis.
o CAT4x4Matrix(CATMathVectorf&)
Constructs a 3D translation matrix from a translation vector.
o CAT4x4Matrix(CATMathVectorf&,CATMathPointf&)
Constructs a 3D matrix from a rotation and angle vector and an invariant point.
o CAT4x4Matrix(CATMathVectorf&,CATMathVectorf&,CATMathPointf&)
Constructs a 3D matrix from a translation vector, a rotation and angle vector and an invariant point.
o CAT4x4Matrix(CATMathVectorf&,CATMathVectorf&,CATMathVectorf&,CATMathVectorf&)
Constructs a 3D matrix from 4 vectors.
o CAT4x4Matrix(float**,CATMathVectorf&)
Constructs a 3D matrix from a float array and a translation vector.
o CAT4x4Matrix(void)
Constructs an identity 3D matrix.
o ~CAT4x4Matrix(void)
Destructor.

Method Index


o ComputeInverseTransposeThirdColumnNormalized(float*)
Computes an Inversed, Transposed with the third column normalized 3D matrix.
o GetComponents(CATMathDirectionf&,CATMathDirectionf&,CATMathDirectionf&,CATMathPointf&)
Gets the 3D matrix components.
o GetComponents(CATMathVectorf&,CATMathVectorf&,CATMathVectorf&,CATMathPointf&)
Gets the 3D matrix components.
o GetDeterminant(void)
Gets the determinant of the 3D matrix.
o GetInvertedMatrix(CAT4x4Matrix&)
Gets the inverted 3D matrix.
o GetMatrix(void)
Gets the 3D matrix components.
o GetScaling(void)
Gets the scaling factor of the 3D matrix.
o GetTranslation(CATMathVectorf&)
Gets the 3D matrix translation vector.
o IsIdentity(void)
Indicates if the 3D matrix is an identity matrix.
o SetComponents(CATMathDirectionf&,CATMathDirectionf&,CATMathDirectionf&,CATMathPointf&)
Sets the 3D matrix components.
o SetComponents(CATMathVectorf&,CATMathVectorf&,CATMathVectorf&,CATMathPointf&)
Sets the 3D matrix components.
o SetElement(int,int,float)
Sets one element of the 3D matrix.
o SetTranslation(CATMathVectorf&,float)
Sets the 3D matrix translation from a vector.
o multiply(CAT4x4Matrix&,CAT4x4Matrix&)
Multiplies a 3D matrix by another 3D matrix.
o multiply(CATMathDirectionf&)
Multiplies the 3D matrix by a direction.
o multiply(CATMathPointf&)
Multiplies the 3D matrix by a point.
o multiply(CATMathVectorf&)
Multiplies the 3D matrix by a vector.
o operator *(CAT4x4Matrix&)
Multiplication operator.
o operator *(CATMathDirectionf&)
Multiplies a matrix by a space direction.
o operator *(CATMathPointf&)
Multiplies a matrix by a space point.
o operator *(CATMathVectorf&)
Multiplies a matrix by a space vector.
o operator *=(CAT4x4Matrix&)
Multiplication assignment operator.
o operator =(CAT4x4Matrix&)
Assignment operator.

Constructor and Destructor


o CAT4x4Matrix
public CAT4x4Matrix( const CAT4x4Matrix& )
Constructs an 3D matrix from an other 3D matrix.
o CAT4x4Matrix
public CAT4x4Matrix( const CATMathAxis& iAxis)
Constructs a 3D matrix from axis.
Parameters:
iAxis
The axis.
o CAT4x4Matrix
public CAT4x4Matrix( const CATMathVectorf& iTra)
Constructs a 3D translation matrix from a translation vector.
Parameters:
iTra
The translation vector.
o CAT4x4Matrix
public CAT4x4Matrix( const CATMathVectorf& iRot,
const CATMathPointf& iInv)
Constructs a 3D matrix from a rotation and angle vector and an invariant point.
Parameters:
iRot
The rotation and angle vector.
iInv
the invariant point.
o CAT4x4Matrix
public CAT4x4Matrix( const CATMathVectorf& iTra,
const CATMathVectorf& iRot,
const CATMathPointf& iInv)
Constructs a 3D matrix from a translation vector, a rotation and angle vector and an invariant point.
Parameters:
iTra
The translation vector.
iRot
The rotation and angle vector.
iInv
the invariant point.
o CAT4x4Matrix
public CAT4x4Matrix( const CATMathVectorf& iU,
const CATMathVectorf& iV,
const CATMathVectorf& iW,
const CATMathVectorf& iTra)
Constructs a 3D matrix from 4 vectors.
Parameters:
iU
The fisrt vector.
iV
The second vector.
iW
The third vector.
iTra
The fourth vector (Translation).
o CAT4x4Matrix
public CAT4x4Matrix( const float** iRot,
const CATMathVectorf& iTra)
Constructs a 3D matrix from a float array and a translation vector.
Parameters:
iRot
The rotation float array.
iTra
The translation vector.
o CAT4x4Matrix
public CAT4x4Matrix(void )
Constructs an identity 3D matrix.
o ~CAT4x4Matrix
public virtual ~CAT4x4Matrix(void )
Destructor.

Methods


o ComputeInverseTransposeThirdColumnNormalized
public void ComputeInverseTransposeThirdColumnNormalized(float* oMatrix)const
Computes an Inversed, Transposed with the third column normalized 3D matrix.
Parameters:
oMatrix
The components of the resultant 3D matrix.
o GetComponents
public void GetComponents(CATMathDirectionf& oU,
CATMathDirectionf& oV,
CATMathDirectionf& oW,
CATMathPointf& oT) const
Gets the 3D matrix components.
Parameters:
oU
The returned U rotation direction.
oV
The returned V rotation direction.
oW
The returned W rotation direction.
oTra
The returned translation point.
o GetComponents
public void GetComponents(CATMathVectorf& oU,
CATMathVectorf& oV,
CATMathVectorf& oW,
CATMathPointf& oT) const
Gets the 3D matrix components.
Parameters:
oU
The returned U rotation vector.
oV
The returned V rotation vector.
oW
The returned W rotation vector.
oTra
The returned translation point.
o GetDeterminant
public inline float GetDeterminant(void ) const
Gets the determinant of the 3D matrix.
Returns:
The value of the determinant.
o GetInvertedMatrix
public void GetInvertedMatrix(CAT4x4Matrix& oMatrix) const
Gets the inverted 3D matrix.
Parameters:
oMatrix
The returned inverted matrix.
o GetMatrix
public inline float * GetMatrix(void ) const
Gets the 3D matrix components.
Returns:
The float pointer of the 3D matrix components.
o GetScaling
public inline float GetScaling(void ) const
Gets the scaling factor of the 3D matrix.
Returns:
The value of the scaling factor of the 3D matrix.
o GetTranslation
public void GetTranslation(CATMathVectorf& oTra) const
Gets the 3D matrix translation vector.
Parameters:
oTra
The returned translation vector.
o IsIdentity
public int IsIdentity(void ) const
Indicates if the 3D matrix is an identity matrix.
Returns:
The status of the 3D matrix.
o SetComponents
public void SetComponents( const CATMathDirectionf& iU,
const CATMathDirectionf& iV,
const CATMathDirectionf& iW,
const CATMathPointf& iT)
Sets the 3D matrix components.
Parameters:
iU
The U rotation direction.
iV
The V rotation direction.
iW
The W rotation direction.
iTra
The translation point.
o SetComponents
public void SetComponents( const CATMathVectorf& iU,
const CATMathVectorf& iV,
const CATMathVectorf& iW,
const CATMathPointf& iT)
Sets the 3D matrix components.
Parameters:
iU
The U rotation vector.
iV
The V rotation vector.
iW
The W rotation vector.
iTra
The translation point.
o SetElement
public inline void SetElement(int iRow,
int iCol,
float iValue)
Sets one element of the 3D matrix.
Parameters:
iRow
The row indice.
iCol
The column indice.
iValue.
The value of the rowth and columnth element to be set.
o SetTranslation
public void SetTranslation( const CATMathVectorf& iTra,
const float w= 1.f)
Sets the 3D matrix translation from a vector.
Parameters:
iTra
The translation vector.
w
Do not use this parameter.
o multiply
public inline void multiply( const CAT4x4Matrix& iMatrix1,
const CAT4x4Matrix& iMatrix2)
Multiplies a 3D matrix by another 3D matrix.
Parameters:
iMatrix1
The first 3D matrix.
iMatrix2
The second 3D matrix.
o multiply
public inline void multiply(CATMathDirectionf& ioDirection) const
Multiplies the 3D matrix by a direction.
Parameters:
ioDirection
The direction multiply by the matrix and the returned direction.
o multiply
public inline void multiply(CATMathPointf& ioPoint) const
Multiplies the 3D matrix by a point.
Parameters:
ioPoint
The point multiply by the matrix and the returned point.
o multiply
public inline void multiply(CATMathVectorf& ioVector) const
Multiplies the 3D matrix by a vector.
Parameters:
ioVector
The vector multiply by the matrix and the returned vector.
o operator *
public CAT4x4Matrix operator *( const CAT4x4Matrix& iMatrix) const
Multiplication operator.
Parameters:
iMatrix
The matrix to multiply with the current one
Returns:
The matrix resulting from the multiplication
o operator *
public CATMathDirectionf operator *( const CATMathDirectionf& iDirection) const
Multiplies a matrix by a space direction.
Role: The 3x3 submatrix is multiplied by the direction component triplet and the matrix translation vector is added to the multiplication result
Parameters:
iDirection
The direction whose component triplet is to be multiplied by the matrix
Returns:
The direction resulting from the multiplication
o operator *
public CATMathPointf operator *( const CATMathPointf& iPoint) const
Multiplies a matrix by a space point.
Role: The 3x3 submatrix is multiplied by the point coordinate triplet and the matrix translation vector is added to the multiplication result
Parameters:
iPoint
The point whose coordinate triplet is to be multiplied by the matrix
Returns:
The point resulting from the multiplication
o operator *
public CATMathVectorf operator *( const CATMathVectorf& iVector) const
Multiplies a matrix by a space vector.
Role: The 3x3 submatrix is multiplied by the vector component triplet and the matrix translation vector is added to the multiplication result
Parameters:
iVector
The vector whose component triplet is to be multiplied by the matrix
Returns:
The vector resulting from the multiplication
o operator *=
public CAT4x4Matrix & operator *=( const CAT4x4Matrix& iMatrix)
Multiplication assignment operator.
Parameters:
iMatrix
The matrix to multiply with the current one
Returns:
The matrix resulting from the multiplication
o operator =
public CAT4x4Matrix & operator =( const CAT4x4Matrix& iMatrix)
Assignment operator.
Parameters:
iMatrix
The matrix to assign to the current one
Returns:
The matrix resulting from the assignment

This object is included in the file: CAT4x4Matrix.h
If needed, your Imakefile.mk should include the module: CATViz

Copyright © 2003, Dassault Systèmes. All rights reserved.