IRiNodeItem Interface Reference

Inherits IDispatch, and IDispatch.

List of all members.

Public Member Functions

HRESULT Delete ([in] BSTR nodeName)
HRESULT ConnectTo ([in] BSTR bSourceNodeName,[in] BSTR bSourceConName,[in] BSTR bDestNodeName,[in] BSTR bDestConName)
HRESULT Disconnect ([in] BSTR bSourceNodeName,[in] BSTR bSourceConName,[in] BSTR bDestNodeName,[in] BSTR bDestConName)
HRESULT ReconnectFrom ([in] BSTR bSrc1NodeName,[in] BSTR bSrc1ConName,[in] BSTR bSrc2NodeName,[in] BSTR bSrc2ConName,[in] BSTR bDestNodeName,[in] BSTR bDestConName)
HRESULT ReconnectTo ([in] BSTR bSourceNodeName,[in] BSTR bSourceConName,[in] BSTR bDest1NodeName,[in] BSTR bDest1ConName,[in] BSTR bDest2NodeName,[in] BSTR bDest2ConName)
HRESULT ConRemove ([in] BSTR szNodeName,[in] BSTR szConName)
HRESULT ConReset ([in] BSTR szNodeName,[in] BSTR szConName)
HRESULT ConCreate ([in] BSTR szNodeName,[in] BSTR szNewConName,[in] BSTR szNewType,[in] VARIANT vNewflags)
HRESULT DisconnectAll ([in] BSTR bNodeName,[in] BSTR bConName)
HRESULT SetFrame ([in] BSTR szRootName,[in] RtFloat frame)
HRESULT DisconnectAllInputs ([in] BSTR bNodeName,[in] BSTR bConName)
HRESULT DisconnectAllOutputs ([in] BSTR bNodeName,[in] BSTR bConName)
HRESULT Select ([in] BSTR szNodeName)
HRESULT SelectionLength ([in] BSTR bsNodeSelection,[out, retval] RtUlong *pSelectionLength)
HRESULT SelectionGetAt ([in] BSTR bsNodeSelection,[in] RtUlong index,[out, retval] VARIANT *pVal)

Properties

VARIANT * Value ([in] BSTR bNodeName,[in] BSTR bConName) [get, set]
VARIANT Value ([in] BSTR bNodeName,[in] BSTR bConName) [set]
VARIANT * ExportConnector ([in] BSTR bSourceNodeName,[in] BSTR bSourceConName,[in] BSTR bDestNodeName,[in] VARIANT vConnect,[in] VARIANT vSetValue) [get]
VARIANT * Value ([in] BSTR bNodeName,[in] BSTR bConName) [get]
VARIANT * Create ([in] BSTR idName,[in] VARIANT vOwner) [get]
VARIANT * Rename ([in] BSTR bsFullNodeName,[in] BSTR bsNewShortNodeName) [get]
VARIANT * Copy ([in] VARIANT idName,[in] VARIANT vOwner) [get]
VARIANT * SafeRename ([in] BSTR bsFullNodeName,[in] BSTR bsNewShortNodeName) [get]
VARIANT * ConRename ([in] BSTR bsFullNodeName,[in] BSTR bsConName,[in] BSTR bsNewConName) [get]
RtBOOL * ConExists ([in] BSTR szNodeName,[in] BSTR szConName) [get]
RtBOOL * ConDataTypeExists ([in] BSTR szNodeName,[in] BSTR szDataType) [get]
RtUlong * SubObjectCount ([in] BSTR szNodeName) [get]
VARIANT * SubObject ([in] BSTR szNodeName,[in] RtUlong index) [get]
VARIANT * Owner ([in] BSTR szNodeName) [get]
VARIANT * FirstSelected [get]
VARIANT * Move ([in] VARIANT idName,[in] VARIANT vOwner) [get]
RtBOOL * Exists ([in] BSTR szNodeName) [get]
RtBOOL * IsRenderable ([in] BSTR szNodeName) [get]
RtBOOL * IsLight ([in] BSTR szNodeName) [get]
RtBOOL * IsCamera ([in] BSTR szNodeName) [get]
VARIANT * ConDataType ([in] BSTR szNodeName,[in] BSTR szConName) [get]
RtUlong * SelectedCount [get]
VARIANT * Selected ([in] RtUlong index) [get]
VARIANT * Selection [get]
VARIANT * ShortName ([in] BSTR bsFullNodeName) [get]
RtBOOL * IsEndCon ([in] BSTR szNodeName,[in] BSTR szConName) [get]
RtUlong * LinkedInputNodeCount ([in] BSTR szNodeName,[in] BSTR szConName) [get]
VARIANT * LinkedInputNode ([in] BSTR szNodeName,[in] BSTR szConName,[in] RtUlong index) [get]
RtUlong * LinkedOutputNodeCount ([in] BSTR szNodeName,[in] BSTR szConName) [get]
VARIANT * LinkedOutputNode ([in] BSTR szNodeName,[in] BSTR szConName,[in] RtUlong index) [get]
VARIANT * NearValue ([in] BSTR bNodeName,[in] BSTR bConName) [get]
VARIANT NearValue ([in] BSTR bNodeName,[in] BSTR bConName) [set]
VARIANT * LookupParentValue ([in] BSTR bConName) [get]
VARIANT * AccessFnSet ([in] BSTR bNodeName) [get]
VARIANT * AccessNearFnSet ([in] BSTR bNodeName) [get]


Detailed Description

The IRiNodeItem interface provides very important methods for manipulating, inspecting and connecting objects and their attributes in the scene.

Root-level name in the scripting engine's name space: Node

Member Function Documentation

HRESULT IRiNodeItem::Delete ( [in] BSTR  nodeName  ) 

Deletes given object (and all its connections if any).

Parameters:
nodeName [in] Full name of object to be deleted.
Example: delete Cube object form the scene.
 Node.Delete( '/Project/Space 3D/Cube')  

HRESULT IRiNodeItem::ConnectTo ( [in] BSTR  bSourceNodeName,
[in] BSTR  bSourceConName,
[in] BSTR  bDestNodeName,
[in] BSTR  bDestConName 
)

Creates new link between 2 objects.

Parameters:
bSourceNodeName [in] Full name of source object for link.
bSourceConName [in] Name of source (output) connector in the source object.
bDestNodeName [in] Full name of destination object for link.
bDestConName [in] Name of destination (input) connector in the destination object.
Example: connect subobjects in the Gear object.
 Node.ConnectTo(Gear, 'outMesh', Shape,'Input Mesh')  

HRESULT IRiNodeItem::Disconnect ( [in] BSTR  bSourceNodeName,
[in] BSTR  bSourceConName,
[in] BSTR  bDestNodeName,
[in] BSTR  bDestConName 
)

Erases existing link between 2 objects.

Parameters:
bSourceNodeName [in] Full name of source object for link.
bSourceConName [in] Name of source (output) connector in the source object.
bDestNodeName [in] Full name of destination object for link.
bDestConName [in] Name of destination (input) connector in the destination object.
Example: disconnect subobjects in the Gear object
 Node.Disconnect(Gear, 'outMesh', Shape,'Input Mesh'); 

HRESULT IRiNodeItem::ReconnectFrom ( [in] BSTR  bSrc1NodeName,
[in] BSTR  bSrc1ConName,
[in] BSTR  bSrc2NodeName,
[in] BSTR  bSrc2ConName,
[in] BSTR  bDestNodeName,
[in] BSTR  bDestConName 
)

ReconnectFrom allows destruction of an existing link (source1) and creation of new link (source2) to the destination connector.

Parameters:
bSrc1NodeName [in] Full name of source object for link.
bSrc1ConName [in] Source con name.
bSrc2NodeName [in] Source #2's full name.
bSrc2ConName [in] Source #2's con name.
bDestNodeName [in] Destination full node name.
bDestConName [in] Destination con name.

HRESULT IRiNodeItem::ReconnectTo ( [in] BSTR  bSourceNodeName,
[in] BSTR  bSourceConName,
[in] BSTR  bDest1NodeName,
[in] BSTR  bDest1ConName,
[in] BSTR  bDest2NodeName,
[in] BSTR  bDest2ConName 
)

ReconnectTo allows destruction of an existing link (destination1) and creation of new link (destination2) from the source connector.

Parameters:
bSourceNodeName [in] Full name of source object for link.
bSourceConName [in] Source con name.
bDest1NodeName [in] Destination full node name.
bDest1ConName [in] Destination con name.
bDest2NodeName [in] Destination #2 full node name.
bDest1ConName [in] Destination #2 con name.

HRESULT IRiNodeItem::ConRemove ( [in] BSTR  szNodeName,
[in] BSTR  szConName 
)

Removes given connector.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Name of connector to be removed.
Example: Remove connector.
 Node.ConRemove('/Project/Space 3D/Cube', 'Mesh') 

HRESULT IRiNodeItem::ConReset ( [in] BSTR  szNodeName,
[in] BSTR  szConName 
)

Resets given connector (i.e. sets default value for it).

Parameters:
szNodeName [in] Full name of object.
szConName [in] Name of connector to be removed.
Example: Reset connector
 Node.ConReset('/Project/Space 3D/Cube', 'Mesh') 

HRESULT IRiNodeItem::ConCreate ( [in] BSTR  szNodeName,
[in] BSTR  szNewConName,
[in] BSTR  szNewType,
[in] VARIANT  vNewflags 
)

Creates new connector.

Parameters:
szNodeName [in] Full name of object.
szNewConName [in] Name of connector to be created.
szNewType [in] New connector type (float, double, string, ulong).
vNewflags [in] Flags of the new connector (4 = input, 2 = output, 32 = hidden …).
Example: Create new output connector of string type.
 Node.ConCreate('/Project/Space 3D/Cube', 'Note', 'string',2) 

HRESULT IRiNodeItem::DisconnectAll ( [in] BSTR  bNodeName,
[in] BSTR  bConName 
)

Disconnects all links from specific connector of specific node.

Parameters:
bNodeName [in] Full name of the object.
bConName [in] Name of connector to disconnect.
Example: Disconnect the connector.
 Node.DisconnectAll('/Project/Space 3D/Cube', 'Matrix')) 

HRESULT IRiNodeItem::SetFrame ( [in] BSTR  szRootName,
[in] RtFloat  frame 
)

Set animation frame for given object / scene.

Parameters:
szRootName [in] Full name of object / scene.
frame [in] Frame number (floating).

HRESULT IRiNodeItem::DisconnectAllInputs ( [in] BSTR  bNodeName,
[in] BSTR  bConName 
)

Disconnects all input links from given connector of given node.

  • Useful mainly for encapsulators where one connector can have input and output links as well.
  • Sub-objects exports are also links.
Parameters:
bNodeName [in] Full name of object.
bConName [in] Name of connector to disconnect.
Example: Disconnect all input links of the connector
 Node.DisconnectAllInputs('/Project/Space 3D/Cube', 'Matrix')) 

HRESULT IRiNodeItem::DisconnectAllOutputs ( [in] BSTR  bNodeName,
[in] BSTR  bConName 
)

Disconnects all output links from specific connector of specific node.

  • Useful mainly for encapsulators where one connector can have input and output links as well.
Parameters:
bNodeName [in] Full name of object.
bConName [in] Name of connector to disconnect.
Example: Disconnect output links of the connector.
 Node.DisconnectAllOutputs('/Project/Space 3D/Cube', 'Mesh')) 

HRESULT IRiNodeItem::Select ( [in] BSTR  szNodeName  ) 

Selects given object:

  • The object will be the only one selected after this operation.
Parameters:
szNodeName [in] Full name of object.

HRESULT IRiNodeItem::SelectionLength ( [in] BSTR  bsNodeSelection,
[out, retval] RtUlong *  pSelectionLength 
)

Gets length (number of objects) in given selection string.

Remarks:
Obtained using the Selection method.
Parameters:
bsNodeSelection [in] Objects selection string (semicolon separated full object names).
Returns:
pSelectionLength [out,retval] Returns length of given selection (number of objects).

HRESULT IRiNodeItem::SelectionGetAt ( [in] BSTR  bsNodeSelection,
[in] RtUlong  index,
[out, retval] VARIANT *  pVal 
)

Gets one object from selection string.

Remarks:
Obtained using the Selection method.
Parameters:
bsNodeSelection [in] Objects selection string (semicolon separated full object names).
index [in] Zero based index of object to be retrieved (0..SelectionLength).
Returns:
pVal [out,retval] Returns i-th object name from the selection passed.
Example: Loop trough the selection and perform complex stuff.
 sel = Node.Selection();
 for (i = 0; i < Node.SelectionLength(sel); i++) {
  Node.Select(Node.SelectionGetAt(sel, i)); 
        // do some stuff here
    }


Property Documentation

VARIANT IRiNodeItem::Value [get, set]

Sets value of given connector for given object.

Parameters:
bNodeName [in] Full name identification of object.
bConName [in] Connector name.
newVal [in] New value of the connector.
Example: Set value of the 'Matrix' connector for Cube object.
 Node.Value('/Project/Space 3D/Cube', 'Matrix') = val 

VARIANT IRiNodeItem::Value([in] BSTR bNodeName, [in] BSTR bConName) [set]

Sets value of given connector for given object.

Parameters:
bNodeName [in] Full name identification of object.
bConName [in] Connector name.
newVal [in] New value of the connector.
Example: Set value of the 'Matrix' connector for Cube object.
 Node.Value('/Project/Space 3D/Cube', 'Matrix') = val 

VARIANT * IRiNodeItem::ExportConnector [get]

Exports given input or output connector.

Parameters:
bSourceNodeName [in] Full name of source object for link.
bSourceConName [in] Name of source (output) connector in the source object.
bDestNodeName [in] Full name of destination object for link (if empty, owner object will be used by default).
vConnect [in] Connect immediately flag.
vSetValue [in] Set value immediately flag.
Returns:
pVal [out,retval] Returns name of the newly created exported connector.
Example: Export connector from Shape subobject.
 Node.ExportConnector(Shape, 'Mesh', '', 1, 1); 

VARIANT* IRiNodeItem::Value([in] BSTR bNodeName, [in] BSTR bConName) [get]

Gets value of specific connector of specific object.

Parameters:
bNodeName [in] Full name identification of object.
bConName [in] Connector name.
Returns:
pVal [out, retval] Returns value of the connector, if exists .
Example: Get value of the 'ObjMatrix' connector from Cube object
 val = Node.Value('/Project/Space 3D/Cube', 'ObjMatrix') 

VARIANT* IRiNodeItem::Create([in] BSTR idName, [in] VARIANT vOwner) [get]

Creates object instance of given type in particular encapsulator

Parameters:
idName [in] Identifier of tS object prototype (see Nodes reference doc for full list of available objects).
vOwner [in] Full name of owner (encapsulator) for newly created object.
Returns:
bName [out, retval] Returns full name of newly created object.
Example: create new encapsulator object
 Encaps = Node.Create('Kernel Package/Object', '/Project/Space 3D') 

VARIANT* IRiNodeItem::Rename([in] BSTR bsFullNodeName, [in] BSTR bsNewShortNodeName) [get]

Renames given object.

Remarks:
Note: use SafeRename variant if you cannot ensure new name not exists already in the scene.
Parameters:
bsFullNodeName [in] Full name of object.
bsNewShortNodeName [in] New short name of object (without full path).
Returns:
pVal [out, retval] Returns full name of object after renaming.
Example: Rename object.
 Node.Rename('/Project/Space 3D/Cube', 'MyNiceCube') 

VARIANT* IRiNodeItem::Copy([in] VARIANT idName, [in] VARIANT vOwner) [get]

Makes copy of the given object.

Parameters:
idName [in] Full name of source object.
vOwner [in] Full name of owner object for newly created copy.
Returns:
pVal [out,retval] Returns full name of the created object.
Example: Copy object.
 Node.Copy('/Project/Space 3D/Cube', '/Project/Space 3D/MyGroup')  

VARIANT* IRiNodeItem::SafeRename([in] BSTR bsFullNodeName, [in] BSTR bsNewShortNodeName) [get]

Safely renames given object. If object with desired name already exists, similar name will be generated instead (e.g. 'Cube, 1' instead of 'Cube')

Parameters:
bsFullNodeName [in] Full name of object.
bsNewShortNodeName [in] New short name of object (without full path).
Returns:
pVal [out,retval] Returns full name of object after renaming.
Example: Safe Rename object
 Node.SafeRename('/Project/Space 3D/Cube', 'MyNiceCube') 

VARIANT* IRiNodeItem::ConRename([in] BSTR bsFullNodeName, [in] BSTR bsConName, [in] BSTR bsNewConName) [get]

Renames existing connector.

Parameters:
bsFullNodeName [in] Full name of object.
bsConName [in] Name of connector to be renamed.
bsNewConName [in] Desired new connector name.
Returns:
pVal [out, retval] Returns actual new connector name.
Example: Rename connector of string type.
 Node.ConRename('/Project/Space 3D/Cube', 'Mesh', 'MyMesh') 

RtBOOL* IRiNodeItem::ConExists([in] BSTR szNodeName, [in] BSTR szConName) [get]

Tests for given connector existence (by connector name).

Parameters:
szNodeName [in] Full name of object.
szConName [in] Name of connector to test.
Returns:
bExist [out,retval] Returns true if the connector exists, false otherwise.
Example: Test connector existence.
 if (Node.ConExists('/Project/Space 3D/Cube', 'Matrix')) 
  System.Alert('Connector Matrix exists in the object'); 

RtBOOL* IRiNodeItem::ConDataTypeExists([in] BSTR szNodeName, [in] BSTR szDataType) [get]

Tests for given connector existence. (by connector type).

Parameters:
szNodeName [in] Full name of object.
szDataType [in] Name of data type (data object) to test.
Returns:
bExist [out,retval] Returns true if at least one connector of given data type exists in the object, false otherwise.
Example: Test mesh data type connector existence.
 if (Node.ConDataTypeExists('/Project/Space 3D/Cube', ' Space 3D Package/Mesh Data')) 
  System.Alert('mesh is present in the object'); 

RtUlong* IRiNodeItem::SubObjectCount([in] BSTR szNodeName) [get]

Gets number of sub-objects of given object.

Parameters:
szNodeName [in] Full name of object.
Returns:
nSubObj [out,retval] Returns number of sub-objects.
Example: Traverse sub-objects of Cube object.
 nSubObj = Node.SubObjectCount('/Project/Space 3D/Cube'); 
 for (i = 0; i < nSubObj; i++) 
  System.Trace(Node.SubObject('/Project/Space 3D/Cube', i)); 

VARIANT* IRiNodeItem::SubObject([in] BSTR szNodeName, [in] RtUlong index) [get]

Gets sub-object name for given object and index.

Parameters:
szNodeName [in] Full name of object.
index [in] Index of sub-object (from range 0 .. SubObjectCount-1).
Returns:
subObjName [out,retval]] Returns short name of sub-object.
Example: Traverse subobjects of Cube object.
 nSubObj = Node.SubObjectCount('/Project/Space 3D/Cube'); 
 for (i = 0; i < nSubObj; i++) 
  System.Trace(Node.SubObject('/Project/Space 3D/Cube', i)); 

VARIANT* IRiNodeItem::Owner([in] BSTR szNodeName) [get]

Gets owner (parent) of given object.

Parameters:
szNodeName [in] Full name of object.
Returns:
ownerName [out,retval] Returns full name of the owner object.
Example: Discover Owner of a Cube object.
 owner = Node.Owner('/Project/Space 3D/Cube'); 

VARIANT* IRiNodeItem::FirstSelected [get]

Gets the current selected object.

Returns:
pVal [out,retval] Returns full name of the current selected object.
Example: Get selection.
 selName = Node.FirstSelected() 

VARIANT* IRiNodeItem::Move([in] VARIANT idName, [in] VARIANT vOwner) [get]

Moves the object.

Parameters:
idName [in] Full name of the source object.
vOwner [in] Full name of the new owner/destination object (the source object will be moved there).
Returns:
pVal [out, retval] Returns full name of the moved object.
Example: Move object.
 Node.Move('/Project/Space 3D/Cube', '/Project/Space 3D/MyGroup') 

RtBOOL* IRiNodeItem::Exists([in] BSTR szNodeName) [get]

Tests existence of given object (by name).

Parameters:
szNodeName [in] Full name of object.
Returns:
pVal [out,retval] Returns TRUE if the object exists in the scene, FALSE otherwise.
Example: Test object existence.
 if (Node.Exists('/Project/Space 3D/Cube')) 
  System.Alert('the object exists!'); 

RtBOOL* IRiNodeItem::IsRenderable([in] BSTR szNodeName) [get]

Tests if given object is renderable.

  • Test if an object contains a mesh.
  • Perhaps you wish to test for existence of a matrix.
  • Test a material so it is recognized by renderers...
Parameters:
szNodeName [in] Full name of object.
Returns:
pVal [out,retval] Returns TRUE if the object is renderable, FALSE otherwise.
Example: Test if object is renderable.
 if (Node.IsRenderable('/Project/Space 3D/Cube')) 
  System.Alert('the object is renderable!'); 

RtBOOL* IRiNodeItem::IsLight([in] BSTR szNodeName) [get]

Tests if given object is a light:

  • It contains light-specific attributes(s).
Parameters:
szNodeName [in] Full name of object.
Returns:
pVal [out, retval] Returns TRUE if the object is a light, FALSE otherwise.
Example: Test if object is a light.
 if (Node.IsLight('/Project/Space 3D/SpotLight, 1')) 
  System.Alert('the object is a light!'); 

RtBOOL* IRiNodeItem::IsCamera([in] BSTR szNodeName) [get]

Tests if given object is a camera:

  • It contains camera-specific attributes(s).
Parameters:
szNodeName [in]Full name of object.
Returns:
pVal [out, retval] Returns TRUE if the object is a camera, FALSE otherwise.
Example: Test if object is a camera.
 if (Node.IsCamera('/Project/Space 3D/Camera')) 
  System.Alert('the object is a camera!'); 

VARIANT* IRiNodeItem::ConDataType([in] BSTR szNodeName, [in] BSTR szConName) [get]

Gets data type (in string form) of specified connector in specific node.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Connector name.
Returns:
pVal [out, retval] Returns data type identification.

RtUlong* IRiNodeItem::SelectedCount [get]

Gets number of currently selected objects.

Returns:
pNumSelected [out,retval] Returns number of selected objects.

VARIANT* IRiNodeItem::Selected([in] RtUlong index) [get]

Gets one objects from current selection.

Parameters:
index [in] Zero based index of object to be retrieved (0..SelectedCount-1).
Returns:
pVal [out, retval] Returns full name of i-th selected object.

VARIANT * IRiNodeItem::Selection [get]

Gets entire objects selection in one string:

  • Semicolon separated object names.
  • Useful when you need to remember original selection.
@return pVal [out, retval] Returns entire objects selection string

VARIANT* IRiNodeItem::ShortName([in] BSTR bsFullNodeName) [get]

Gets object's short name:

  • The name without full path.
  • Useful e.g. when passed later into the Rename method.
Parameters:
bsFullNodeName [in] Full name of object.
Returns:
pVal [out,retval] Returns short name extracted from the full object's name.

RtBOOL* IRiNodeItem::IsEndCon([in] BSTR szNodeName, [in] BSTR szConName) [get]

Tests if given connector is an end connector.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Connector name.
Returns:
pVal [out,retval] Returns TRUE if the connector is an end connector, FALSE otherwise.

RtUlong* IRiNodeItem::LinkedInputNodeCount([in] BSTR szNodeName, [in] BSTR szConName) [get]

Gets number of linked input nodes for given connector.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Connector name.
Returns:
pNumLinked [out,retval] Returns number of linked input nodes.

VARIANT* IRiNodeItem::LinkedInputNode([in] BSTR szNodeName, [in] BSTR szConName, [in] RtUlong index) [get]

Gets linked input nodes for given connector and index.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Connector name.
index [in] Index of linked input node (from range 0 .. LinkedInputNodeCount-1).
Returns:
pVal [out,retval] Returns full name of given linked node.

RtUlong* IRiNodeItem::LinkedOutputNodeCount([in] BSTR szNodeName, [in] BSTR szConName) [get]

Gets number of linked output nodes for given connector.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Connector name.
Returns:
pNumLinked [out,retval] Returns number of linked output nodes.

VARIANT* IRiNodeItem::LinkedOutputNode([in] BSTR szNodeName, [in] BSTR szConName, [in] RtUlong index) [get]

Gets linked output nodes for given connector and index.

Parameters:
szNodeName [in] Full name of object.
szConName [in] Connector name.
index [in] Index of linked output node (from range 0 .. LinkedOutputNodeCount-1).
Returns:
pVal [out,retval] Returns full name of given linked node.

VARIANT* IRiNodeItem::NearValue([in] BSTR bNodeName, [in] BSTR bConName) [get]

Gets value of given connector of given near object:

  • i.e. located in the same container, or a few levels up/down.
Parameters:
bNodeName [in] Relative name identification of object.
bConName [in] Connector name.
Returns:
pVal [out,retval] Returns value of the connector, if exists.
Example: get value of the 'ObjMatrix' connector from Cube object that exists in the same container as caller object
 val = Node.NearValue('Cube', 'ObjMatrix') 
note: above code is shorter form of:
 val = Node.Value( System.ThisOwner() + '/Cube', 'ObjMatrix') 
get value of the 'ObjMatrix' connector from Cube object that exists one level up
 val = Node.NearValue('../Cube', 'ObjMatrix') 
get value of the 'ObjMatrix' connector from Cube object that exists in Board sub-container (one level deeper than caller)
 val = Node.NearValue('Board/Cube', 'ObjMatrix') 
get value of the 'ObjMatrix' connector from caller (this) object. Useful e.g. for panel button actions
 val = Node.NearValue('', 'ObjMatrix') 

VARIANT IRiNodeItem::NearValue([in] BSTR bNodeName, [in] BSTR bConName) [set]

Sets value of specific connector for specific near object:

  • i.e. located in the same container, or a few levels up/down.
Parameters:
bNodeName [in] Relative name identification of object.
bConName [in] Connector name.
newVal [in] New value of the connector.
Example: Set value of the 'Matrix' connector for Cube object that exists in the same container as caller object
 Node.NearValue('Cube', 'Matrix') = val 
Note: above code is shorter form of:
 Node.Value( System.ThisOwner() + '/Cube', 'ObjMatrix') = val 
See Node.NearValue get property for more examples.

VARIANT* IRiNodeItem::LookupParentValue([in] BSTR bConName) [get]

Lookup value of specific connector in parents of the caller object:

  • Starting lookup from direct owner up to system root.
  • Returns value from the nearest parent that contains given connector.
Parameters:
bConName [in] Connector name to lookup.
Returns:
pVal [out,retval] Return value.
Example: Lookup value of A connector in parent containers.
  • Throws an error if none.
     A = Node.LookupParentValue('A') 
    

VARIANT* IRiNodeItem::AccessFnSet([in] BSTR bNodeName) [get]

Access function set object.

  • Once accessed, all its public functions / variables may be called and used.
Parameters:
bNodeName [in] Full name of function set object.
Returns:
pVal [out,retval] Return function set dispatch object.
Example: Access ExtendedMathFnSet user-defined function set and calculate factorial using the fn set.
 fn = Node.AccessFnSet( "/Project/Space 3D/ExtendedMathFnSet" );
 fact = fn.Factorial( 7 ) 

VARIANT* IRiNodeItem::AccessNearFnSet([in] BSTR bNodeName) [get]

Access near function set object.

  • i.e. located in the same container, or a few levels up/down.
  • Once accessed, all its public functions / variables may be called and used.
Parameters:
bNodeName [in] Relative name of function set object (see Node.NearValue desc for details).
Returns:
pVal [out, retval] Return function set dispatch object.
Example: Access ExtendedMathFnSet user-defined function set, located in current container, and calculate factorial using the fn set.
 fn = Node.AccessNearFnSet( "ExtendedMathFnSet" );
 fact = fn.Factorial( 7 ) 


Generated on Wed May 20 21:32:16 2009 for trueSpace7.6 SDK by  doxygen 1.5.5