Provided by: inventor-doc_2.1.5-10+dfsg-1_all
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 SoGetMatrixAction(3IV)()