About nodes
- Last UpdatedDec 06, 2023
- 2 minute read
The AVEVA™ XR engine has a great number of nodes of different nature. All nodes share the same declaration rules.
-
Nodes that links to 3D scene entities
-
Logic nodes
-
Connection nodes
-
Command nodes and more
Defining nodes
Each node is characterized by a certain number of parameters and attributes, and by rules that define its hierarchical positioning. Some nodes must reside in other nodes, while other nodes can be put almost everywhere.
Each node field can contain an explicit value inside a node declaration tag or not. If a parameter has a value in a certain way inside the node declaration, this means the parameter assumes the given value during script loading. These are called start values.
Node details
For each node is given:
-
A brief explanation of the node.
-
The position of the node in the scripting hierarchy. This helps to avoid placing improperly.
-
The list of node parameters.
Node fields
Node fields have the following:
-
Field type.
-
Use, which can be:
-
Mandatory: These must be attributes of node definition and cannot be used as a routing target.
-
Optional: These may be attributes of node definition and may also be used as routing source or target, but are not required.
-
Read-only: These are similar to optional parameters, but they cannot be a routing target, only a source.
-
-
Default value. Optional and read-only fields do not always have a default value. Some fields have no default value because they are ignored if not referenced.
Code example
This is an example of defining a node.
<animation name="anim1" animation="Teapot01" start="true" loop="true"/>
Syntax for nodes
The syntax used to assign values to parameters is the syntax used by XML to assign values to the attributes.
-
Some parameters are mandatory.This means that they must always contain a value, or the application cannot work correctly.
-
Some other parameters are optional. It is left to the script developer to decide whether to assign a value inside a declaration or not.
-
Some parameters are read-only. You cannot assign a value to them either inside a declaration or at runtime with a connection (routing).
For more information, see Node scope.