VectorEntity  1.1.0
Medical Data Segmentation Toolkit
Public Types | Public Member Functions
vctl::MCTransformMatrix Class Reference

Class encapsulates basic linear affine transformations in 3D space. More...

#include <mctransformmatrix.h>

Inheritance diagram for vctl::MCTransformMatrix:
Inheritance graph
[legend]

List of all members.

Public Types

typedef
mds::img::CCoordinates3
< mds::img::tCoordinate > 
tCoords3
 Base vector class type.
typedef
mds::math::CStaticMatrix
< mds::img::tCoordinate, 4, 4 > 
tMatrix44
 Base matrix class type.

Public Member Functions

MCTransformMatrixaddRotateX (double rotation_angle)
 Add rotation arount X axis to transformation matrix.
MCTransformMatrixaddRotateY (double rotation_angle)
 Add rotation arount Y axis to transformation matrix.
MCTransformMatrixaddRotateZ (double rotation_angle)
 Add rotation arount Z axis to transformation matrix.
MCTransformMatrixaddScale (double sx, double sy, double sz)
 Add a scale to transformation matrix.
MCTransformMatrixaddTranslation (double x, double y, double z)
 Add a translation to transformation matrix.
void makeIdentity ()
 Make identity matrix.
MCTransformMatrixmakeRotateX (double rotation_angle)
 Set rotation around X axis to transformation matrix.
MCTransformMatrixmakeRotateY (double rotation_angle)
 Set rotation around Y axis to transformation matrix.
MCTransformMatrixmakeRotateZ (double rotation_angle)
 Set rotation around Z axis to transformation matrix.
MCTransformMatrixmakeScale (double sx, double sy, double sz)
 Set a scale to transformation matrix.
MCTransformMatrixmakeTranslation (double x, double y, double z)
 Set a translation to transformation matrix.
 MCTransformMatrix ()
 Default constructor.
 MCTransformMatrix (const tMatrix44 &v)
 Constructor that initializes matrix values.
 MCTransformMatrix (tMatrix44 *v)
 Constructor that initializes matrix values.
void postMult (const MCTransformMatrix &mm)
 Multiplication of the matrix by given matrix (from right side)
MCTransformMatrix::tCoords3 preMult (const tCoords3 &v, mds::img::tCoordinate coord_weight) const
 Multiplication of given vector with the matrix Result vector is returned.
void preMult (const tCoords3 &v, mds::img::tCoordinate coord_weight, tCoords3 &r) const
 Multiplication of given vector with the matrix Result is saved into second given vector.
void preMult2 (tCoords3 &v, mds::img::tCoordinate coord_weight) const
 Multiplication of given vector with the matrix Result is saved into the given vector.
 ~MCTransformMatrix ()
 Destructor.

Detailed Description

Class encapsulates basic linear affine transformations in 3D space.

The transformation is aplied for all clases derived from CCoordinates3, such are MCVector3D and MCpoint3d. Homogenous coordinate weight is set separately.


Member Typedef Documentation

typedef mds::img::CCoordinates3<mds::img::tCoordinate> vctl::MCTransformMatrix::tCoords3

Base vector class type.

typedef mds::math::CStaticMatrix<mds::img::tCoordinate, 4, 4> vctl::MCTransformMatrix::tMatrix44

Base matrix class type.


Constructor & Destructor Documentation

Default constructor.

  • Initializes all coordinates to zero.

Constructor that initializes matrix values.

Constructor that initializes matrix values.

Destructor.


Member Function Documentation

Add rotation arount X axis to transformation matrix.

Parameters:
rotation_angle,:radians Angle

Add rotation arount Y axis to transformation matrix.

Parameters:
rotation_angle,:radians Angle

Add rotation arount Z axis to transformation matrix.

Parameters:
rotation_angle,:radians Angle

Add a scale to transformation matrix.

Parameters:
sx,:scale factor in X axis
sy,:scale factor in Y axis
sz,:scale factor in Z axis

Add a translation to transformation matrix.

Parameters:
x,:shift distance in X axis
y,:shift distance in Y axis
z,:shift distance in Z axis

Make identity matrix.

Set rotation around X axis to transformation matrix.

Parameters:
rotation_angle,:radians Angle

Set rotation around Y axis to transformation matrix.

Parameters:
rotation_angle,:radians Angle

Set rotation around Z axis to transformation matrix.

Parameters:
rotation_angle,:radians Angle

Set a scale to transformation matrix.

Parameters:
sx,:scale factor in X axis
sy,:scale factor in Y axis
sz,:scale factor in Z axis

Set a translation to transformation matrix.

Parameters:
x,:shift distance in X axis
y,:shift distance in Y axis
z,:shift distance in Z axis

Multiplication of the matrix by given matrix (from right side)

Parameters:
mm,:multiplied matrix, from right side
MCTransformMatrix::tCoords3 MCTransformMatrix::preMult ( const tCoords3 v,
mds::img::tCoordinate  coord_weight 
) const

Multiplication of given vector with the matrix Result vector is returned.

Parameters:
v,:multiplied vector
coord_weight,:homogenout coordinate weight, for point = 1, for vector = 0
void MCTransformMatrix::preMult ( const tCoords3 v,
mds::img::tCoordinate  coord_weight,
tCoords3 r 
) const

Multiplication of given vector with the matrix Result is saved into second given vector.

Parameters:
v,:multiplied vector
coord_weight,:homogenout coordinate weight, for point = 1, for vector = 0
r,:result vector
void MCTransformMatrix::preMult2 ( tCoords3 v,
mds::img::tCoordinate  coord_weight 
) const

Multiplication of given vector with the matrix Result is saved into the given vector.

Parameters:
v,:multiplied and result vector
coord_weight,:homogenout coordinate weight, for point = 1, for vector = 0

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