Node

Methods

Methods Node کلاس نمایانگر یک عنصر نام‌دار در گراف صحنه 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یک entity اضافی را به این گره متصل می‌کند
merge(node)Noneفرزندان و entityهای گره دیگری را در این گره ادغام می‌کند
evaluate_global_transform(with_geometric_transform)Matrix4ماتریس تبدیل world-space را برمی‌گرداند؛ pass True برای شامل کردن جابجایی‌های هندسی
get_bounding_box()BoundingBoxجعبه محدود‌کننده axis-aligned گره را در فضای جهان محاسبه می‌کند
get_property(name)Anyمقدار یک property را بر اساس نام دریافت می‌کند
find_property(name)Optional[Property]یک 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}")

موارد مرتبط

 فارسی