SoGetMatrixAction(3IV)

SoGetMatrixAction (SoMxAct) - computes transformation matrix for subgraph

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

NAME
     SoGetMatrixAction (SoMxAct) - computes transformation matrix for subgraph

INHERITS FROM
     SoAction > SoGetMatrixAction

SYNOPSIS
     #include <Inventor_c/actions/SoGetMatrixAction.h>

     typedef SoGetMatrixAction  SoMxAct

          Functions from class SoGetMatrixAction:

     SoGetMatrixAction *       SoMxActCreate(const SbViewportRegion
                                    *newRegion)
     void                      SoMxActSetVPReg(SoMxAct *this, const
                                    SbViewportRegion *newRegion)
     const SbViewportRegion *  SoMxActGetVPReg(const SoMxAct *this)
     SbMatrix *                SoMxActGetMx(SoMxAct *this)
     SbMatrix *                SoMxActGetInv(SoMxAct *this)
     SbMatrix *                SoMxActGetTexMx(SoMxAct *this)
     SbMatrix *                SoMxActGetTexInv(SoMxAct *this)

          Functions from class SoAction:

     void                SoMxActApply(SoMxAct *this, SoNode *node)
     void                SoMxActApplyPath(SoMxAct *this, SoPath *path)
     void                SoMxActApplyPathList(SoMxAct *this, const SoPathList
                              *pathList, SbBool obeysRules = FALSE)
     SoType              SoMxActGetClassTypeId()
     SoType              SoMxActGetTypeId(SoMxAct *this)
     SbBool              SoMxActIsOfType(SoMxAct *this, SoType type)
     void                SoMxActInvalidateState(SoMxAct *this)


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.
FUNCTIONS
     SoGetMatrixAction *       SoMxActCreate(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                      SoMxActSetVPReg(SoMxAct *this, const
                                    SbViewportRegion *newRegion)
     const SbViewportRegion *  SoMxActGetVPReg(const SoMxAct *this)
          Sets/returns current viewport region to use for action.

     SbMatrix *                SoMxActGetMx(SoMxAct *this)
     SbMatrix *                SoMxActGetInv(SoMxAct *this)
          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 *                SoMxActGetTexMx(SoMxAct *this)
     SbMatrix *                SoMxActGetTexInv(SoMxAct *this)
          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