Scroll to navigation

SoComposeMatrix(3IV)() SoComposeMatrix(3IV)()

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