Node

Properties

Properties Node kelas mewakili elemen bernama dalam graf adegan Aspose.3D. Setiap nod boleh memegang satu Entity (seperti a Mesh, Camera, atau Light), mengekalkan hubungan ibu-bapa-anak dengan nod lain, dan membawa transformasi tempatan. Nod adalah cara utama untuk menyusun objek 3D dalam hierarki adegan.

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)

Properties

Properties Node pembina menginisialisasi nod dengan nama pilihan.

PropertiesPropertiesProperties
namestrNama pilihan untuk nod

Properties

Semua atribut nod di bawah adalah ciri; akses mereka tanpa kurungan.

PropertiesPropertiesProperties
namestrPengenal yang boleh dibaca manusia untuk nod
entity`EntityNone`
entitieslist[Entity]Semua entiti yang dilampirkan pada nod ini (baca-sahaja). Sebuah nod boleh merujuk lebih daripada satu entiti.
material`MaterialNone`
materialslist[Material]Semua bahan yang ditetapkan kepada nod ini (baca-sahaja).
child_nodeslist[Node]Senarai nod anak. Gunakan child_nodes: tidak children
parent_node`NodeNone`
parent_nodeslist[Node]Semua nod induk (warisan dari Entity; menyokong peninstansian)
visibleboolProperties False, nod dan subpokoknya disembunyikan dalam penampil yang menghormati kebolehlihatan.
excludedboolProperties True, nod ini dikecualikan daripada rendering
transformTransformTransformasi setempat (terjemahan, putaran, skala)
global_transformGlobalTransformMatriks transformasi ruang-dunia
asset_info`AssetInfoNone`
propertiesPropertyCollectionSifat khusus yang dilampirkan pada nod ini

Properties

PropertiesJenis PulanganProperties
create_child_node(name)NodeMencipta dan melampirkan nod anak baru dengan nama yang diberikan
create_child_node(name, entity)NodeMencipta nod anak dan menetapkan entiti kepadanya
add_child_node(node)NoneMenambah nod sedia ada sebagai anak kepada nod ini
get_child(name)Optional[Node]Mencari nod anak langsung mengikut nama
add_entity(entity)NoneMelampirkan entiti tambahan kepada nod ini
merge(node)NoneMenggabungkan anak dan entiti nod lain ke dalam nod ini
evaluate_global_transform(with_geometric_transform)Matrix4Mengembalikan matriks transformasi ruang-dunia; lewati True untuk menyertakan offset geometri
get_bounding_box()BoundingBoxMengira kotak sempadan berpaksi yang selari dengan nod dalam ruang-dunia
get_property(name)AnyMendapatkan nilai sifat mengikut nama
find_property(name)Optional[Property]Mencari sifat mengikut nama

Properties

Cipta satu adegan, lampirkan mesh kepada node, dan lalui graf adegan:

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

scene = Scene()
mesh = Mesh()
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}")

Lihat Juga

 Bahasa Melayu