Node

Methods

Methods Node คลาสแสดงถึงองค์ประกอบที่มีชื่อใน Aspose.3D scene graph. แต่ละโหนดสามารถถือหนึ่ง Entity (เช่น a Mesh, Camera, หรือ Light).

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สร้างโหนดลูกและกำหนด entity ให้กับมัน
add_child_node(node)Noneเพิ่มโหนดที่มีอยู่เป็นโหนดลูกของโหนดนี้
get_child(name)Optional[Node]ค้นหาโหนดลูกโดยตรงตามชื่อ
add_entity(entity)Noneแนบ entity เพิ่มเติมให้กับโหนดนี้
merge(node)Noneรวมโหนดลูกและ entity ของโหนดอื่นเข้ากับโหนดนี้
evaluate_global_transform(with_geometric_transform)Matrix4คืนค่าเมทริกซ์การแปลงในระบบพิกัดโลก; pass True เพื่อรวมการออฟเซ็ตเชิงเรขาคณิต
get_bounding_box()BoundingBoxคำนวณกล่องขอบเขตที่จัดแนวตามแกนของโหนดในระบบพิกัดโลก
get_property(name)Anyดึงค่าคุณสมบัติตามชื่อ
find_property(name)Optional[Property]ค้นหาคุณสมบัติตามชื่อ

Methods

สร้างฉาก, แนบเมชเข้ากับโหนด, และเดินทางผ่านกราฟฉาก:

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

ดูเพิ่มเติม

 ภาษาไทย