Scene
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| ————————- | ————————- | —————————————————————— |
| name | str | Nama pilihan bagi adegan |
| entity | Entity | Entiti pilihan untuk dilampirkan kepada nod akar semasa penciptaan |
| parent_scene | Scene | Adegan ibu pilihan (untuk sub-adegan) |
from aspose.threed import Scene
# Empty scene
scene = Scene()
# Access the root node (property, not a method)
root = scene.root_nodeKaedah Kelas
| ————————————- | ————– | ———————————————————————————- |
| Scene.from_file(file_path) | Scene | Muatkan adegan dari laluan fail yang ditentukan, mengesan format secara automatik. |
| Scene.from_file(file_path, options) | Scene | Muatkan adegan dengan pilihan muat khusus format. |
from aspose.threed import Scene
from aspose.threed.formats import ObjLoadOptions
# Load from file (format detected from extension)
scene = Scene.from_file("model.obj")
# Load with options
opts = ObjLoadOptions()
scene = Scene.from_file("model.obj", opts)root_node dan atribut peringkat adegan lain adalah ciri-ciri; akses mereka tanpa kurungan.
| ————————- | ————————- | —————————————————————– |
| root_node | Node | Nod akar hierarki adegan. Akses sebagai sifat: scene.root_node |
| sub_scenes | list[Scene] | Sub-adegan yang bersarang dalam adegan ini |
| asset_info | AssetInfo | Metadata aset seperti pengarang, tarikh penciptaan, dan unit |
| animation_clips | list[AnimationClip] | Klip animasi yang ditakrifkan dalam adegan |
| current_animation_clip | AnimationClip | None | Klip animasi yang sedang aktif. Baca/tulis. |
| library | list[CustomObject] | Objek metadata yang ditakrifkan pengguna dilampirkan pada adegan. |
| name | str | Nama objek adegan |
| properties | PropertyCollection | Sifat khusus yang dilampirkan pada adegan |
| —————————– | ———————- | —————————————————————————- |
| save(file_path) | None | Menyimpan adegan ke fail; format ditentukan daripada sambungan |
| save(file_path, format) | None | Menyimpan adegan ke fail dalam yang ditentukan FileFormat |
| save(file_path, options) | None | Menyimpan adegan menggunakan pilihan simpan khusus format |
| get_property(name) | Any | Mendapatkan nilai sifat mengikut nama |
| find_property(name) | Optional[Property] | Mencari sifat mengikut nama |
| create_animation_clip(name) | AnimationClip | Mencipta klip animasi bernama baru dan menambahkannya ke adegan |
| get_animation_clip(name) | AnimationClip | None | Mencari klip animasi sedia ada mengikut nama, atau None jika tidak ditemui |
| clear() | None | Membersihkan semua kandungan dari adegan |
Nota: root_node ialah sifat pada Scene kelas, bukan kaedah. Jangan tulis scene.root_node(); akses yang betul ialah scene.root_node.
Cipta sebuah adegan, tambahkan nod mesh, dan simpan ke 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
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)