SoComposeMatrix(3IV)NAMESoComposeMatrix (SoCmpsMx) - composes a transformation matrix
INHERITS FROM
SoBase > SoFieldContainer > SoEngine > SoComposeMatrixSYNOPSIS
#include <Inventor_c/engines/SoCompose.h>
typedef SoComposeMatrix SoCmpsMx
Inputs from class SoComposeMatrix:
SoMFVec3f translation
SoMFRotation rotation
SoMFVec3f scaleFactor
SoMFRotation scaleOrientation
SoMFVec3f center
Outputs from class SoComposeMatrix:
(SoMFMatrix) matrix
Functions from class SoComposeMatrix:
SoComposeMatrix * SoCmpsMxCreate()
Functions from class SoEngine:
SoType SoCmpsMxGetTypeId()
int SoCmpsMxGetOuts(const SoCmpsMx *this,
SoEngineOutputList *list)
SoEngineOutput * SoCmpsMxGetOut(const SoCmpsMx *this, const char
*outputName)
SbBool SoCmpsMxGetOutName(const SoCmpsMx *this, const
SoEngineOutput *output, SbName *outputName)
SoEngine * SoCmpsMxCopy(const SoCmpsMx *this)
SoEngine * SoCmpsMxGetByName(const char *name)
int SoCmpsMxGetByNameList(const char *name, SoEngineList
*list)
Functions from class SoFieldContainer:
SoType SoCmpsMxGetClassTypeId()
void SoCmpsMxSetToDflts(SoCmpsMx *this)
SbBool SoCmpsMxHasDfltVals(const SoCmpsMx *this)
SbBool SoCmpsMxFldsAreEq(const SoCmpsMx *this, const
SoFieldContainer *fc)
void SoCmpsMxCopyFieldVals(SoCmpsMx *this, const
SoFieldContainer *fc, SbBool copyConnections =
FALSE)
Page 1SoComposeMatrix(3IV)
SbBool SoCmpsMxSet(SoCmpsMx *this, const char
*fieldDataString)
void SoCmpsMxGet(SoCmpsMx *this, SbString
*fieldDataString)
int SoCmpsMxGetFields(const SoCmpsMx *this, SoFieldList
*resultList)
SoField * SoCmpsMxGetField(const SoCmpsMx *this, const char
*fieldName)
SbBool SoCmpsMxGetFieldName(const SoCmpsMx *this, const
SoField *field, SbName *fieldName)
SbBool SoCmpsMxIsNotifyEnabled(const SoCmpsMx *this)
SbBool SoCmpsMxEnableNotify(SoCmpsMx *this, SbBool flag)
Functions from class SoBase:
void SoCmpsMxRef(SoCmpsMx *this)
void SoCmpsMxUnref(const SoCmpsMx *this)
void SoCmpsMxUnrefNoDelete(const SoCmpsMx *this)
void SoCmpsMxTouch(SoCmpsMx *this)
SbBool SoCmpsMxIsOfType(const SoCmpsMx *this, SoType type)
void SoCmpsMxSetName(SoCmpsMx *this, const char *name)
SbName SoCmpsMxGetName(const SoCmpsMx *this)
DESCRIPTION
This engine has inputs that specify values for translation, rotation,
scale, and center of transformation. As output, it produces a
transformation matrix that transforms objects into the space specified by
the scale, rotation, and translation inputs (in that order).
The input fields can have multiple values, allowing the engine to compose
several matrices in parallel. Some inputs may have more values than
others. In such cases, the last value of the shorter inputs will be
repeated as necessary.
INPUTS
SoMFVec3f translation
Translation in x, y, and z.
SoMFRotation rotation
Rotation.
SoMFVec3f scaleFactor
Scale factors in x, y, and z.
SoMFRotation scaleOrientation
Rotational space for scaling.
SoMFVec3f center
Center point for scaling and rotating.
Page 2SoComposeMatrix(3IV)OUTPUTS
(SoMFMatrix) matrix
Transformation matrix that transforms from object space into the
space specified by the inputs.
FUNCTIONSSoComposeMatrix * SoCmpsMxCreate()
Constructor
FILE FORMAT/DEFAULTS
ComposeMatrix {
translation 0 0 0
rotation 0 0 1 0
scaleFactor 1 1 1
scaleOrientation 0 0 1 0
center 0 0 0
}
SEE ALSO
SoDecomposeMatrix, SoEngineOutput
Page 3