SoNodeKitPath Class |
Path that points to a list of hierarchical nodekits.
Namespace: OIV.Inventor
The SoNodeKitPath type exposes the following members.
Name | Description | |
---|---|---|
Append(Int32) | Adds node to end of chain; the node is the childIndex'th child of the current tail node. | |
Append(SoBaseKit) | Adds childKit to end of chain; uses first occurrence of childKit as a part within current last nodekit. | |
Append(SoNode) | Adds node to end of chain; uses the first occurrence of childNode as child of current tail node. | |
Append(SoNodeKitPath) | Adds all nodekits in fromPath's chain to end of chain; the head node of fromPath must be the same as or a child of the current tail node. | |
Append(SoPath) | Adds all nodes in fromPath's chain to end of chain; the head node of fromPath must be the same as or a child of the current tail node. | |
ContainsNode(Type) | Returns true if the node type is found anywhere in the path chain. | |
ContainsNode(SoBaseKit) | Returns true if the passed nodekit is found anywhere in the path chain. | |
ContainsNode(SoNode) | Returns true if the node is found anywhere in the path chain. | |
ContainsPath | Returns true if the nodes in the chain in the passed path are contained (in consecutive order) in this path chain. | |
Copy | Calls Copy(System.Int32(0), System.Int32(0)). (Inherited from SoPath.) | |
Copy(Int32) | Calls Copy(startFromNodeIndex, System.Int32(0)). (Inherited from SoPath.) | |
Copy(Int32, Int32) | Creates and returns a new path that is a copy of some or all of this path. | |
Dispose |
Releases all resources used by SoDisposable.
(Inherited from SoDisposable.) | |
Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
FindFork(SoNodeKitPath) | If the two paths have different head nodes, this returns -1. | |
FindFork(SoPath) | If the two paths have different head nodes, this returns -1. | |
GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) | |
GetHead | Returns the first node in a path chain. | |
GetIndex | Returns the index of the i'th node (within its parent) in the chain. | |
GetIndexFromTail | Returns the index of the i'th node (within its parent) in the chain, counting backward from the tail node. | |
GetInstanceIndex | Returns the index of the instance inside the parent OIV.Inventor.Nodes.SoMultipleInstance, OIV.Inventor.Nodes.SoMultipleCopy or OIV.Inventor.Nodes.SoArray group. | |
GetInstanceIndexFromTail | Returns the index of the i'th node instance (within its parent, if it is a OIV.Inventor.Nodes.SoMultipleInstance, OIV.Inventor.Nodes.SoMultipleCopy or OIV.Inventor.Nodes.SoArray group in the chain, counting backward from the tail node. | |
GetLength | Returns length of path chain (number of nodekits). | |
GetName | Returns the name of an instance. | |
GetNode(Int32) | Returns the i'th node in the nodekit path. | |
GetNode(Type, Int32) | Returns the first node and its index, from the head of the given type in the chain. | |
GetNodeFromTail | Returns the i'th nodekit in the chain, counting backward from the tail nodekit. | |
GetStringName | (Inherited from SoBase.) | |
GetTail | Return the last nodekit in a path chain. | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
IsSynchronizable | Gets the ScaleViz synchronizable state of this object. | |
Pop | Pops the last nodekit off the end of the path. | |
Push | The OIV.Inventor.SoPath.Push(System.Int32) and OIV.Inventor.SoPath.Pop() methods allow a path to be treated as a stack; they push a node at the end of the chain and pop the last node off. | |
SetHead | Sets head node (first node in chain). | |
SetName | (Inherited from SoBase.) | |
SetSynchronizable | Sets this to be a ScaleViz synchronizable object. | |
ToString |
Converts this SoBase structure to a human readable string.
(Inherited from SoBase.) | |
Touch | Marks an instance as modified, simulating a change to it. | |
Truncate | Truncates the path chain, removing all nodes from index start on. |
Name | Description | |
---|---|---|
FullPath |
This property allows you to retrieve a SoFullPath from an SoPath.
(Inherited from SoPath.) | |
IsDisposable | ISafeDisposable interface implementation.
(Inherited from SoDisposable.) | |
Length | Returns length of path chain (number of nodes). |
OIV.Inventor.SoNodeKitPath is a subclass of OIV.Inventor.SoPath that lets you look at nodekits below the top nodekit in the path. Since nodekits have hidden children, when you call OIV.Inventor.SoNodeKitPath.GetTail() on a regular path, it returns the top-most nodekit on the path. This occurs even though the path might contain extra internal information leading to a node far deeper in the scene graph. For example, when picking an object inside an OIV.Inventor.Nodekits.SoSceneKit, the regular path would end at the scenekit. But a nodekit path would continue further down listing the other nodekits below it in the path.
Intermediary (private) nodes between nodekits are not included in the nodekit path.
Note that there is no constructor for an OIV.Inventor.SoNodeKitPath, so you can not create one. Rather, you cast an (OIV.Inventor.SoPath *) into an (OIV.Inventor.SoNodeKitPath *), which returns nodekit-style values from all the same questions as OIV.Inventor.SoPath.
Also, some methods of OIV.Inventor.SoPath may not be called on an OIV.Inventor.SoNodeKitPath. Any methods which take a regular OIV.Inventor.Nodes.SoNode as an argument (except for OIV.Inventor.SoPath.SetHead(OIV.Inventor.Nodes.SoNode)) are not accessible, and replaced by methods that take an OIV.Inventor.Nodekits.SoBaseKit as an argument instead. Methods which allow the programmer to refer to the child index of a node beneath its parent are also inaccessible; since an OIV.Inventor.SoNodeKitPath only shows nodekits and hides any private parts, successive nodekits in the path may not actually be parent and child.