Node

Methods

Methods Node class представлява именуван елемент в Aspose.3D графа на сцената. Всеки възел може да съдържа един Entity (като Mesh, Camera, или Light), поддържа отношения родител‑дете с други възли и носи локална трансформация. Възлите са основният начин за организиране на 3D обекти в йерархията на сцената.

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 конструкторът инициализира възел с незадължително име.

MethodsMethodsMethods
namestrНезадължително име за възела

Methods

Всички атрибути на възела по-долу са свойства; достъпвайте ги без скоби.

MethodsMethodsMethods
namestrЧовеко-четим идентификатор за възела
entity`EntityNone`
entitieslist[Entity]Всички обекти, прикрепени към този възел (само за четене). Възел може да се отнася до повече от един обект.
material`MaterialNone`
materialslist[Material]Всички материали, зададени за този възел (само за четене).
child_nodeslist[Node]Списък с дъщерни възли. Използвайте child_nodes:не children
parent_node`NodeNone`
parent_nodeslist[Node]Всички родителски възли (наследени от Entity; поддържа инстанциране)
visibleboolMethods False, възелът и неговото поддърво са скрити в прегледачи, които спазват видимостта.
excludedboolMethods True, този възел е изключен от рендерирането
transformTransformЛокална трансформация (превод, завъртане, мащаб)
global_transformGlobalTransformМатрица за трансформация в световното пространство
asset_info`AssetInfoNone`
propertiesPropertyCollectionПерсонализирани свойства, прикрепени към този възел

Methods

MethodsТип на връщанеMethods
create_child_node(name)NodeСъздава и прикрепя нов дъщерен възел с даденото име
create_child_node(name, entity)NodeСъздава дъщерен възел и му присвоява ентитет
add_child_node(node)NoneДобавя съществуващ възел като дъщерен към този възел
get_child(name)Optional[Node]Намира директен дъщерен възел по име
add_entity(entity)NoneПрикрепя допълнителен ентитет към този възел
merge(node)NoneОбединява децата и entities на друг възел в този възел
evaluate_global_transform(with_geometric_transform)Matrix4Връща трансформационната матрица в световното пространство; преминете True за включване на геометрични отмествания
get_bounding_box()BoundingBoxИзчислява осево-ориентираната ограничителна кутия на възела в световното пространство
get_property(name)AnyПолучава стойност на свойство по име
find_property(name)Optional[Property]Намира свойство по име

Methods

Създайте сцена, прикрепете mesh към възел и обходете графа на сцената:

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

Вижте също

 Български