Node

Methods

Methods Node třída představuje pojmenovaný prvek v Aspose.3D grafu scény. Každý uzel může obsahovat jeden Entity (například Mesh, Camera, nebo Light), udržuje vztahy rodič‑dítě s ostatními uzly a nese lokální transformaci. Uzly jsou hlavním způsobem, jak organizovat 3D objekty v hierarchii scény.

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 konstruktor inicializuje uzel s volitelným názvem.

MethodsMethodsMethods
namestrVolitelný název uzlu

Methods

Všechny níže uvedené atributy uzlu jsou vlastnosti; přistupujte k nim bez závorek.

MethodsMethodsMethods
namestrČlověkem čitelný identifikátor uzlu
entity`EntityNone`
entitieslist[Entity]Všechny entity připojené k tomuto uzlu (pouze pro čtení). Uzel může odkazovat na více než jednu entitu.
material`MaterialNone`
materialslist[Material]Všechny materiály přiřazené tomuto uzlu (pouze pro čtení).
child_nodeslist[Node]Seznam podřízených uzlů. Použijte child_nodes:ne children
parent_node`NodeNone`
parent_nodeslist[Node]Všechny nadřazené uzly (zděděné z Entity; podporuje instanciování)
visibleboolMethods False, uzel a jeho podstrom jsou skryty v prohlížečích, které respektují viditelnost.
excludedboolMethods True, tento uzel je vyloučen z vykreslování
transformTransformLokální transformace (posunutí, rotace, měřítko)
global_transformGlobalTransformMaticová transformace ve světovém prostoru
asset_info`AssetInfoNone`
propertiesPropertyCollectionVlastní vlastnosti připojené k tomuto uzlu

Methods

MethodsNávratový typMethods
create_child_node(name)NodeVytvoří a připojí nový podřízený uzel s daným názvem
create_child_node(name, entity)NodeVytvoří podřízený uzel a přiřadí mu entitu
add_child_node(node)NonePřidá existující uzel jako podřízený tohoto uzlu
get_child(name)Optional[Node]Najde přímý podřízený uzel podle názvu
add_entity(entity)NonePřipojí další entitu k tomuto uzlu
merge(node)NoneSloučí podřízené uzly a entity jiného uzlu do tohoto uzlu
evaluate_global_transform(with_geometric_transform)Matrix4Vrací matici transformace ve světovém prostoru; předat True pro zahrnutí geometrických posunů
get_bounding_box()BoundingBoxVypočítá osově zarovnaný ohraničující rámeček uzlu ve světovém prostoru
get_property(name)AnyZíská hodnotu vlastnosti podle názvu
find_property(name)Optional[Property]Najde vlastnost podle názvu

Methods

Vytvořte scénu, připojte mesh k uzlu a projděte graf scény:

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

Viz také

 Čeština