man SoDecomposeMatrix () - decomposes transformation matrices into values for translation, rotation, and scale

NAME

SoDecomposeMatrix - decomposes transformation matrices into values for translation, rotation, and scale

INHERITS FROM

SoBase > SoFieldContainer > SoEngine > SoDecomposeMatrix

SYNOPSIS

#include <Inventor/engines/SoCompose.h> Inputs from class SoDecomposeMatrix: c } c } matrix

c } c } center Outputs from class SoDecomposeMatrix: c } c } translation

c } c } rotation

c } c } scaleFactor

c } c } scaleOrientation Methods from class SoDecomposeMatrix: c } c } SoDecomposeMatrix() Methods from class SoEngine: c } c } getClassTypeId()

c } c } getOutputs(SoEngineOutputList &list) const

c } c } getOutput(const SbName &outputName) const

c } c } getOutputName(const SoEngineOutput *output, SbName &outputName) const

c } c } copy() const

c } c } getByName(const SbName &name)

c } c } getByName(const SbName &name, SoEngineList &list) Methods from class SoFieldContainer: c } c } setToDefaults()

c } c } hasDefaultValues() const

c } c } fieldsAreEqual(const SoFieldContainer *fc) const

c } c } copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)

c } c } set(const char *fieldDataString)

c } c } get(SbString &fieldDataString)

c } c } getFields(SoFieldList &resultList) const

c } c } getField(const SbName &fieldName) const

c } c } getFieldName(const SoField *field, SbName &fieldName) const

c } c } isNotifyEnabled() const

c } c } enableNotify(SbBool flag) Methods from class SoBase: c } c } ref()

c } c } unref() const

c } c } unrefNoDelete() const

c } c } touch()

c } c } getTypeId() const

c } c } isOfType(SoType type) const

c } c } setName(const SbName &name)

c } c } getName() const

DESCRIPTION

This engine takes as input a transformation matrix and a center of transformation. As output the engine produces the translation, rotation and scale values derived from the matrix. The input fields can have multiple values, allowing the engine to decompose several matrices in parallel. One of the inputs may have more values than the other. In that case, the last value of the shorter input will be repeated as necessary.

INPUTS

c } c } matrix

The 4x4 transformation matrix. c } c } center

The center of transformations.

OUTPUTS

c } c } translation

Derived translation in x, y, and z. c } c } rotation

Derived rotation. c } c } scaleFactor

Derived scale values in x, y, and z. c } c } scaleOrientation

Derived rotational space for scaling.

METHODS

c } c } SoDecomposeMatrix()

Constructor

FILE FORMAT/DEFAULTS

DecomposeMatrix {
matrix	1 0 0 0
	0 1 0 0
	0 0 1 0
	0 0 0 1
center	0 0 0
}

SEE ALSO

SoComposeMatrix, SoEngineOutput