Node

Methods

Methods Node class representerer et navngitt element i Aspose.3D scene graph. Hver node kan holde én Entity (som en Mesh, Camera, eller Light), opprettholder foreldre‑barn‑relasjoner med andre noder, og bærer en lokal transform. Noder er den primære måten å organisere 3D‑objekter i et scenehierarki på.

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 konstruktøren initialiserer en node med et valgfritt navn.

MethodsMethodsMethods
namestrValgfritt navn for noden

Methods

Alle node-attributter nedenfor er egenskaper; få tilgang til dem uten parenteser.

MethodsMethodsMethods
namestrMenneske‑lesbar identifikator for noden
entity`EntityNone`
entitieslist[Entity]Alle enheter knyttet til denne noden (kun lesetilgang). En node kan referere til mer enn én enhet.
material`MaterialNone`
materialslist[Material]Alle materialer tilordnet denne noden (kun lesetilgang).
child_nodeslist[Node]Liste over undernoder. Bruk child_nodes: ikke children
parent_node`NodeNone`
parent_nodeslist[Node]Alle overordnede noder (arvet fra Entity; støtter instansering)
visibleboolMethods False, noden og dens undertrær er skjult i visere som respekterer synlighet.
excludedboolMethods True, denne noden er ekskludert fra rendering
transformTransformLokal transformasjon (translasjon, rotasjon, skalering)
global_transformGlobalTransformVerdensrom-transformasjonsmatrise
asset_info`AssetInfoNone`
propertiesPropertyCollectionEgendefinerte egenskaper knyttet til denne noden

Methods

MethodsReturtypeMethods
create_child_node(name)NodeOppretter og knytter en ny undernode med det gitte navnet
create_child_node(name, entity)NodeOppretter en undernode og tilordner en enhet til den
add_child_node(node)NoneLegger til en eksisterende node som undernode til denne noden
get_child(name)Optional[Node]Finner en direkte undernode etter navn
add_entity(entity)NoneKnytter en ekstra enhet til denne noden
merge(node)NoneFletter en annen nodes barn og enheter inn i denne noden
evaluate_global_transform(with_geometric_transform)Matrix4Returnerer verdensrom-transformasjonsmatrisen; pass True for å inkludere geometriske forskyvninger
get_bounding_box()BoundingBoxBeregn den aksejusterte begrensningsboksen til noden i verdensrommet
get_property(name)AnyHenter en egenskapsverdi etter navn
find_property(name)Optional[Property]Finner en egenskap etter navn

Methods

Opprett en scene, fest en mesh til en node, og traverser scenegrafen:

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}")

Se også

 Norsk