Node

Methods

Methods Node klassen repræsenterer et navngivet element i Aspose.3D-scengrafen. Hver node kan indeholde én Entity (såsom en Mesh, Camera, eller Light), opretholder forældre‑barn-relationer med andre noder og bærer en lokal transformation. Noder er den primære måde at organisere 3D‑objekter i en 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 valgfrit navn.

MethodsMethodsMethods
namestrValgfrit navn for noden

Methods

Alle nodeattributter nedenfor er egenskaber; få adgang til dem uden parenteser.

MethodsMethodsMethods
namestrMenneskelæselig identifikator for noden
entity`EntityNone`
entitieslist[Entity]Alle enheder knyttet til denne node (skrivebeskyttet). En node kan referere til mere end én enhed.
material`MaterialNone`
materialslist[Material]Alle materialer tildelt denne node (skrivebeskyttet).
child_nodeslist[Node]Liste over undernoder. Brug child_nodes: ikke children
parent_node`NodeNone`
parent_nodeslist[Node]Alle overordnede noder (arvet fra Entity; understøtter instansiering)
visibleboolMethods False, noden og dens undertræ er skjult i visningsprogrammer, der respekterer synlighed.
excludedboolMethods True, denne node er udelukket fra rendering
transformTransformLokal transformation (translation, rotation, skalering)
global_transformGlobalTransformVerdensrum transformationsmatrix
asset_info`AssetInfoNone`
propertiesPropertyCollectionBrugerdefinerede egenskaber knyttet til denne node

Methods

MethodsReturtypeMethods
create_child_node(name)NodeOpretter og vedhæfter en ny undernode med det angivne navn
create_child_node(name, entity)NodeOpretter en undernode og tildeler en entitet til den
add_child_node(node)NoneTilføjer en eksisterende node som undernode til denne node
get_child(name)Optional[Node]Finder en direkte undernode efter navn
add_entity(entity)NoneVedhæfter en ekstra entitet til denne node
merge(node)NoneFletter en anden nodes børn og enheder ind i denne node
evaluate_global_transform(with_geometric_transform)Matrix4Returnerer verdensrum-transformationsmatrixen; pass True for at inkludere geometriske offset
get_bounding_box()BoundingBoxBeregner den aksejusterede begrænsningsboks for noden i verdensrum
get_property(name)AnyHenter en egenskabs værdi ved navn
find_property(name)Optional[Property]Finder en egenskab ved navn

Methods

Opret en scene, tilknyt en mesh til en node, og gennemløb scengrafen:

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å

 Dansk