Class Node

Node class

Represents an element in the scene graph. A scene graph is a tree of Node objects. The tree management services are self contained in this class. Note the Aspose.3D SDK does not test the validity of the constructed scene graph. It is the responsibility of the caller to make sure that it does not generate cyclic graphs in a node hierarchy. Besides the tree management, this class defines all the properties required to describe the position of the object in the scene. This information include the basic Translation, Rotation and Scaling properties and the more advanced options for pivots, limits, and IK joints attributes such the stiffness and dampening. When it is first created, the Node object is “empty” (i.e: it is an object without any graphical representation that only contains the position information). In this state, it can be used to represent parents in the node tree structure but not much more. The normal use of this type of objects is to add them an entity that will specialize the node (see the “Entity”). The entity is an object in itself and is connected to the the Node. This also means that the same entity can be shared among multiple nodes. Camera, Light, Mesh, etc… are all entities and they all derived from the base class Entity.

public class Node : SceneObject

Constructors

NameDescription
Node()Initializes a new instance of the Node class.
Node(string)Initializes a new instance of the Node class.
Node(string, Entity)Initializes a new instance of the Node class.

Properties

NameDescription
AssetInfo { get; set; }Per-node asset info
ChildNodes { get; }Gets the children nodes.
Entities { get; }Gets all node entities.
Entity { get; set; }Gets or sets the first entity attached to this node, if sets, will clear other entities.
Excluded { get; set; }Gets or sets whether to exclude this node and all child nodes/entities during exporting.
GlobalTransform { get; }Gets the global transform.
Material { get; set; }Gets or sets the first material associated with this node, if sets, will clear other materials
Materials { get; }Gets the materials associated with this node.
MetaDatas { get; }Gets the meta data defined in this node.
virtual Name { get; set; }Gets or sets the name.(Inherited from A3DObject.)
ParentNode { get; set; }Gets or sets the parent node.
Properties { get; }Gets the collection of all properties.(Inherited from A3DObject.)
Scene { get; }Gets the scene that this object belongs to(Inherited from SceneObject.)
Transform { get; }Gets the local transform.
Visible { get; set; }Gets or sets to show the node

Methods

NameDescription
Accept(NodeVisitor)Walks through all descendant nodes(including the current node) and call the visitor with the node. Visitor can break the walk-through by returning false
AddChildNode(Node)Add a child node to this node
AddEntity(Entity)Add an entity to the node.
CreateChildNode()Creates a child node
CreateChildNode(Entity)Create a new child node with given entity attached
CreateChildNode(string)Create a new child node with given node name
CreateChildNode(string, Entity)Create a new child node with given node name
CreateChildNode(string, Entity, Material)Create a new child node with given node name, and attach specified entity and a material
EvaluateGlobalTransform(bool)Evaluate the global transform, include the geometric transform or not.
FindProperty(string)Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)(Inherited from A3DObject.)
GetBoundingBox()Calculate the bounding box of the node
GetChild(int)Gets the child node at specified index.
GetChild(string)Gets the child node with the specified name
GetEntity<T>()
GetProperty(string)Get the value of specified property(Inherited from A3DObject.)
Merge(Node)Detach everything under the node and attach them to current node.
RemoveProperty(Property)Removes a dynamic property.(Inherited from A3DObject.)
RemoveProperty(string)Remove the specified property identified by name(Inherited from A3DObject.)
SelectObjects(string)Select multiple objects under current node using XPath-like query syntax.
SelectSingleObject(string)Select single object under current node using XPath-like query syntax.
SetProperty(string, object)Sets the value of specified property(Inherited from A3DObject.)
override ToString()Gets the string representation of this node.

See Also