SoGetMatrixAction Class |
Computes transformation matrix for a subgraph.
Namespace: OIV.Inventor.Actions
The SoGetMatrixAction type exposes the following members.
Name | Description | |
---|---|---|
![]() | SoGetMatrixAction | Constructor. |
Name | Description | |
---|---|---|
![]() | Apply(SoNode) | Initiates an action on the graph defined by a node. |
![]() | Apply(SoPath) | Initiates an action on the graph defined by a path. |
![]() | Apply(SoPathList) | Calls Apply(pathList, false). (Inherited from SoAction.) |
![]() | Apply(SoPathList, Boolean) | Initiates an action on the graph defined by a list of paths. |
![]() | ClearApplyResult | When applied, an action may reference nodes or create objects (e.g. |
![]() ![]() | EnableElement | |
![]() | EnableElements | (Overrides SoActionEnableElements.) |
![]() | Equals | (Inherited from Object.) |
![]() | ForwardTraversal | Traverse a node that is not part of the current scenegraph. |
![]() | GetContinueActionInBranchFlag | This function indicates if the action must stop in the current branch. |
![]() | GetCurPath | (Inherited from SoAction.) |
![]() | GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) |
![]() | GetInverse | Returns the inverse of the cumulative transformation matrix. |
![]() | GetMatrix | Returns cumulative transformation matrix. |
![]() | GetNodeAppliedTo | (Inherited from SoAction.) |
![]() | GetOriginalPathListAppliedTo | (Inherited from SoAction.) |
![]() | GetPathAppliedTo | (Inherited from SoAction.) |
![]() | GetPathCode(SbNativeArrayInt32) | Returns path code based on where current node (the node at the end of the current path) lies with respect to the path(s) the action is being applied to. |
![]() | GetPathCode(SbNativeInt32Array) | Obsolete. Returns path code based on where current node (the node at the end of the current path) lies with respect to the path(s) the action is being applied to. |
![]() | GetPathListAppliedTo | (Inherited from SoAction.) |
![]() | GetPipeId | Gets pipe identifier in the range [1..N] associated to this render action while running a ScaleViz Multipipe configuration. |
![]() | GetSceneManager | Return the SoSceneManager associated with this action. |
![]() | GetState | (Inherited from SoAction.) |
![]() | GetTextureInverse | Returns the inverse of the cumulative texture transformation matrix. |
![]() | GetTextureMatrix | Returns cumulative texture transformation matrix. |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | GetViewportRegion | Returns current viewport region to use for action. |
![]() | GetWhatAppliedTo | (Inherited from SoAction.) |
![]() | HasTerminated | (Inherited from SoAction.) |
![]() | InvalidateState | Invalidates the current traversal state in the action, forcing it to be recreated when the action is next applied. |
![]() | IsBeingApplied | Returns true if this action is currently being applied. |
![]() | IsLastPathListAppliedTo | (Inherited from SoAction.) |
![]() | IsUsingAlternateRep | Returns true if current action is using alternate representations. |
![]() | PostDelayedTraversal | Method called by SoMultiPassManager after delayed pass traversals. |
![]() | PreDelayedTraversal | Method called by SoMultiPassManager before delayed pass traversals. |
![]() | ResetContinueActionInBranchFlag | This function resets the continue action flag. |
![]() | SetPipeId | Sets pipe identifier in the range [1..N] associated to this render action while running a ScaleViz Multipipe configuration. |
![]() | SetSceneManager | Set the scene manager associated with this action (if any ). |
![]() | SetUpState | (Inherited from SoAction.) |
![]() | SetViewportRegion | Sets current viewport region to use for action. |
![]() | StopActionInBranch | This function stops the action in the current Scene Graph branch. |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() | Traverse | (Inherited from SoAction.) |
![]() | UseAlternateRep | Tell the action to use alternate representations during traversal when available. |
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. The cumulative transformation matrix transforms the coordinates of a shape from the local object coordinate system to the global world coordinate system.
When this action is applied to a node, it computes the matrix for just that node. This is currently the easiest way to get the transformation matrix for an SoTransform node. It's not very useful for most other types of nodes.
The most common scenario is applying this action to a path. In that case 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 most other actions (such as rendering) do. This behavior makes the most sense for this action. To get a path to, for example, a specific geometry in the scene graph see SoSearchAction.
Sets: SoViewportRegionElement
SoPath somePath = ...
SoGetMatrixAction gma = new SoGetMatrixAction( viewer.GetViewportRegion() );
gma.Apply( somePath );
SbMatrix matrix = gma.GetMatrix();