Node

Methods

Methods Node la classe representa un element amb nom al gràfic de escena Aspose.3D. Cada node pot contenir un Entity (com ara un Mesh, Camera, o Light), manté relacions pare‑fill amb altres nodes i porta una transformació local. Els nodes són la forma principal d’organitzar objectes 3D en una jerarquia d’escena.

from aspose.threed import Scene, Node

scene = Scene()

# Access the root node: root_node is a property on Scene
root = scene.root_node

# Create a child node
child = root.create_child_node("my_node")

# child_nodes is a property: access without parentheses
for node in root.child_nodes:
    print(node.name)

Methods

Methods Node El constructor inicialitza un node amb un nom opcional.

MethodsMethodsMethods
namestrNom opcional per al node

Methods

Tots els atributs del node a continuació són propietats; accediu-hi sense parèntesis.

MethodsMethodsMethods
namestrIdentificador llegible per a humans del node
entity`EntityNone`
entitieslist[Entity]Totes les entitats adjuntes a aquest node (només lectura). Un node pot referenciar més d’una entitat.
material`MaterialNone`
materialslist[Material]Tots els materials assignats a aquest node (només lectura).
child_nodeslist[Node]Llista de nodes fills. Utilitzeu child_nodes: no children
parent_node`NodeNone`
parent_nodeslist[Node]Tots els nodes pares (heretats de Entity; admet instanciació)
visibleboolMethods False, el node i el seu subarbre estan ocults en visualitzadors que respecten la visibilitat.
excludedboolMethods True, aquest node s’exclou del renderitzat
transformTransformTransformació local (traslació, rotació, escala)
global_transformGlobalTransformMatriu de transformació en l’espai mundial
asset_info`AssetInfoNone`
propertiesPropertyCollectionPropietats personalitzades adjuntes a aquest node

Methods

MethodsTipus de retornMethods
create_child_node(name)NodeCrea i adjunta un node fill nou amb el nom indicat
create_child_node(name, entity)NodeCrea un node fill i li assigna una entitat
add_child_node(node)NoneAfegeix un node existent com a fill d’aquest node
get_child(name)Optional[Node]Troba un node fill directe per nom
add_entity(entity)NoneAdjunta una entitat addicional a aquest node
merge(node)NoneFusiona els fills i les entitats d’un altre node en aquest node
evaluate_global_transform(with_geometric_transform)Matrix4Retorna la matriu de transformació en l’espai mundial; passa True per incloure desplaçaments geomètrics
get_bounding_box()BoundingBoxCalcula la caixa delimitadora alineada amb els eixos del node en l’espai mundial
get_property(name)AnyObté el valor d’una propietat per nom
find_property(name)Optional[Property]Troba una propietat per nom

Methods

Creeu una escena, adjunteu un mesh a un node i recorreu el gràfic de escena:

from aspose.threed import Scene, Node
from aspose.threed.entities import Mesh
from aspose.threed.utilities import Vector4

scene = Scene()
mesh = Mesh()
# Use _control_points to mutate the backing list (control_points returns a copy)
mesh._control_points.append(Vector4(0, 0, 0, 1))
mesh._control_points.append(Vector4(1, 0, 0, 1))
mesh._control_points.append(Vector4(0.5, 1, 0, 1))
mesh.create_polygon(0, 1, 2)

# Attach mesh to a child node
node = scene.root_node.create_child_node("triangle", mesh)

# Traverse child_nodes (property, not a method)
for child in scene.root_node.child_nodes:
    entity = child.entity
    if entity is not None:
        print(f"Node '{child.name}': {type(entity).__name__}")
        # excluded is a property
        print(f"  Excluded: {entity.excluded}")

Vegeu també

 Català