SoComposeMatrix(3IV)

SoComposeMatrix (SoCmpsMx) - composes a transformation matrix

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

NAME
     SoComposeMatrix (SoCmpsMx) - composes a transformation matrix

INHERITS FROM
     SoBase > SoFieldContainer > SoEngine > SoComposeMatrix

SYNOPSIS
     #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)
     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.

OUTPUTS
     (SoMFMatrix)        matrix
          Transformation matrix that transforms from object space into the
          space specified by the inputs.


FUNCTIONS
     SoComposeMatrix *   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