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_nodeMethods
Methods Scene يمكن إنشاء مثيل من الفئة بدون أي معاملات لإنشاء مشهد فارغ، أو باستخدام معاملات اختيارية.
| Methods | Methods | Methods |
|---|---|---|
name | str | اسم اختياري للمشهد |
entity | Entity | كيان اختياري لتوصيله بالعقدة الجذرية عند الإنشاء |
parent_scene | Scene | مشهد أبوي اختياري (للمشاهد الفرعية) |
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 وغيرها من سمات مستوى المشهد هي خصائص; يمكن الوصول إليها دون أقواس.
| Methods | Methods | Methods |
|---|---|---|
root_node | Node | العقدة الجذرية لهرمية المشهد. يمكن الوصول إليها كخاصية: scene.root_node |
sub_scenes | list[Scene] | المشاهد الفرعية المتداخلة داخل هذا المشهد |
asset_info | AssetInfo | بيانات تعريف الأصل مثل المؤلف، تاريخ الإنشاء، والوحدات |
animation_clips | list[AnimationClip] | مقاطع الرسوم المتحركة المعرفة في المشهد |
current_animation_clip | `AnimationClip | None` |
library | list[CustomObject] | كائنات بيانات تعريف مخصصة من قبل المستخدم مرفقة بالمشهد. |
name | str | اسم كائن المشهد |
properties | PropertyCollection | خصائص مخصصة مرفقة بالمشهد |
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) | `AnimationClip | None` |
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)