Scene

Methods

Methods Scene کلاس در Aspose.3D به عنوان کانتینر ریشه برای محتوای سه‌بعدی عمل می‌کند، اشیاء سطح بالا را مدیریت می‌کند و امکان مدیریت روابط والد/فرزند برای سلسله‌مراتب صحنه را فراهم می‌سازد. این کلاس دسترسی به گره‌های ریشه و زیرصحنه‌ها را فراهم می‌کند و نقطه ورودی برای بارگذاری، ساخت و ذخیره‌سازی صحنه‌های سه‌بعدی است.

from aspose.threed import Scene

# Create an empty scene
scene = Scene()

# Access the root node: root_node is a property, not a method call
root = scene.root_node

Methods

Methods Scene کلاس می‌تواند بدون هیچ آرگومانی نمونه‌سازی شود تا یک صحنه خالی ایجاد کند، یا با پارامترهای اختیاری.

MethodsMethodsMethods
namestrنام اختیاری صحنه
entityEntityموجودیت اختیاری برای پیوست به گره ریشه هنگام ایجاد
parent_sceneSceneصحنه والد اختیاری (برای زیرصحنه‌ها)
from aspose.threed import Scene

# Empty scene
scene = Scene()

# Access the root node (property, not a method)
root = scene.root_node

متدهای کلاس

Methodsنوع بازگشتMethods
Scene.from_file(file_path)Sceneصحنه‌ای را از مسیر فایل مشخص شده بارگذاری می‌کند و به‌صورت خودکار فرمت را تشخیص می‌دهد. دقیقاً یک آرگومان می‌پذیرد.
from aspose.threed import Scene
from aspose.threed.formats import ObjLoadOptions

# Load from file (format detected from extension)
scene = Scene.from_file("model.obj")

# To pass load options, use scene.open() instead:
opts = ObjLoadOptions()
scene = Scene()
scene.open("model.obj", opts)

Methods

root_node و سایر ویژگی‌های سطح صحنه عبارتند از ویژگی‌ها; بدون پرانتز به آن‌ها دسترسی پیدا کنید.

MethodsMethodsMethods
root_nodeNodeگره ریشهٔ سلسله‌مراتب صحنه. به‌عنوان یک ویژگی دسترسی داشته باشید: scene.root_node
sub_sceneslist[Scene]زیرصحنه‌های تو در تو درون این صحنه
asset_infoAssetInfoفراداده‌های دارایی مانند نویسنده، تاریخ ایجاد و واحدها
animation_clipslist[AnimationClip]کلیپ‌های انیمیشن تعریف‌شده در صحنه
current_animation_clip`AnimationClipNone`
librarylist[CustomObject]اشیای فراداده تعریف‌شده توسط کاربر که به صحنه پیوست شده‌اند.
namestrنام شیء صحنه
propertiesPropertyCollectionویژگی‌های سفارشی پیوست‌شده به صحنه

Methods

Methodsنوع بازگشتMethods
save(file_path)Noneصحنه را در یک فایل ذخیره می‌کند؛ قالب بر اساس پسوند تعیین می‌شود
save(file_path, format)Noneصحنه را در فایلی در مکان مشخص شده ذخیره می‌کند FileFormat
save(file_path, options)Noneصحنه را با استفاده از گزینه‌های ذخیره‌سازی مخصوص فرمت ذخیره می‌کند
get_property(name)Anyمقدار یک ویژگی را بر اساس نام دریافت می‌کند
find_property(name)Optional[Property]یک ویژگی را بر اساس نام پیدا می‌کند
create_animation_clip(name)AnimationClipیک کلیپ انیمیشن جدید با نام ایجاد می‌کند و آن را به صحنه اضافه می‌نماید
get_animation_clip(name)`AnimationClipNone`
clear()Noneتمام محتویات صحنه را پاک می‌کند

توجه: root_node یک ویژگی در Scene کلاس، نه یک متد. ننویسید scene.root_node(); دسترسی صحیح این است scene.root_node.

Methods

یک صحنه ایجاد کنید، یک گرهٔ مش اضافه کنید، و به فرمت GLB ذخیره کنید:

from aspose.threed import Scene
from aspose.threed.entities import Mesh
from aspose.threed.formats import GltfSaveOptions
from aspose.threed.utilities import Vector4

# Create scene and mesh
# Note: control_points returns a copy — use _control_points to add vertices
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)

# Add node to root: root_node is a property
node = scene.root_node.create_child_node("triangle", mesh)

# Save as GLB using GltfSaveOptions with binary_mode
opts = GltfSaveOptions()
opts.binary_mode = True
scene.save("triangle.glb", opts)

موارد مرتبط

 فارسی