NAME
SoGetMatrixAction – computes transformation matrix for subgraph

INHERITS FROM
SoAction >
SoGetMatrixAction

SYNOPSIS
#include <Inventor/actions/SoGetMatrixAction.h>
Methods from class SoGetMatrixAction:
SoGetMatrixAction(const SbViewportRegion &newRegion)
void setViewportRegion(const SbViewportRegion &newRegion)
const SbViewportRegion & getViewportRegion() const
SbMatrix & getMatrix()
SbMatrix & getInverse()
SbMatrix & getTextureMatrix()
SbMatrix & getTextureInverse()
Methods from class SoAction:
virtual void apply(SoNode *node)
virtual void apply(SoPath *path)
virtual void apply(const SoPathList &pathList, SbBool obeysRules = FALSE)
static SoType getClassTypeId()
virtual SoType getTypeId()
virtual SbBool isOfType(SoType type)
virtual void invalidateState()

DESCRIPTION
This action computes transformation matrices for a given subgraph. It computes the cumulative transformation matrix and its inverse, along with a cumulative texture transformation matrix and its inverse.

This action is unlike most others in that it does not traverse downwards from groups. When applied to a node, it computes the matrix for just that node. (This makes sense for transformation nodes, but not for others, really.) It is much more useful when applied to a path. When applied to a path, it gathers the transformation info for all nodes in the path and those that affect nodes in the path, but it stops when it hits the last node in the path; it does not traverse downwards from it as other actions (such as rendering) do. This behavior makes the most sense for this action.

METHODS
SoGetMatrixAction(const SbViewportRegion &newRegion)
Constructor takes viewport region to use for picking. Even though the matrix computation may not involve a window per se, some nodes need this information to determine their placement.
void setViewportRegion(const SbViewportRegion &newRegion)
const SbViewportRegion & getViewportRegion() const
Sets/returns current viewport region to use for action.
SbMatrix & getMatrix()
SbMatrix & getInverse()
Returns cumulative transformation matrix and its inverse. Warning: the matrices returned by these routines should not be changed (unless you are implementing your own transformation nodes).
SbMatrix & getTextureMatrix()
SbMatrix & getTextureInverse()
Returns cumulative texture transformation matrix and its inverse. Warning: the matrices returned by these routines should not be changed (unless you are implementing your own transformation nodes).

SEE ALSO
SoGetBoundingBoxAction

Typeset by Felix Ritter (MeVis Research GmbH)
Hyperlinks by Wolfram Esser (method park Software AG)