oracular (3) SoComposeMatrix.3iv.gz

Provided by: inventor-doc_2.1.6+ds-2_all bug

NAME

       SoComposeMatrix — composes a transformation matrix

INHERITS FROM

       SoBase > SoFieldContainer > SoEngine > SoComposeMatrix

SYNOPSIS

       #include <Inventor/engines/SoCompose.h>

          Inputs from class SoComposeMatrix:

     SoMFVec3f           translation
     SoMFRotation        rotation
     SoMFVec3f           scaleFactor
     SoMFRotation        scaleOrientation
     SoMFVec3f           center

          Outputs from class SoComposeMatrix:

     (SoMFMatrix)        matrix

          Methods from class SoComposeMatrix:

                         SoComposeMatrix()

          Methods from class SoEngine:

     static SoType       getClassTypeId()
     virtual int         getOutputs(SoEngineOutputList &list) const
     SoEngineOutput *    getOutput(const SbName &outputName) const
     SbBool              getOutputName(const SoEngineOutput *output, SbName &outputName) const
     SoEngine *          copy() const
     static SoEngine *   getByName(const SbName &name)
     static int          getByName(const SbName &name, SoEngineList &list)

          Methods from class SoFieldContainer:

     void                setToDefaults()
     SbBool              hasDefaultValues() const
     SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
     void                copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)
     SbBool              set(const char *fieldDataString)
     void                get(SbString &fieldDataString)
     virtual int         getFields(SoFieldList &resultList) const
     virtual SoField *   getField(const SbName &fieldName) const
     SbBool              getFieldName(const SoField *field, SbName &fieldName) const
     SbBool              isNotifyEnabled() const
     SbBool              enableNotify(SbBool flag)

          Methods from class SoBase:

     void                ref()
     void                unref() const
     void                unrefNoDelete() const
     void                touch()
     virtual SoType      getTypeId() const
     SbBool              isOfType(SoType type) const
     virtual void        setName(const SbName &name)
     virtual SbName      getName() const

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.

METHODS

                         SoComposeMatrix()
          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

                                                                                          SoComposeMatrix(3IV)()