Scene

Methods

Methods Scene class in Aspose.3D слугує кореневим контейнером для 3D‑контенту, керує об’єктами верхнього рівня та забезпечує управління батько/дитина у ієрархії сцени. Він надає доступ до кореневих вузлів та підсцен, формуючи точку входу для завантаження, побудови та збереження 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 class можна інстанціювати без аргументів, щоб створити порожню сцену, або з необов’язковими параметрами.

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)

Див. також

 Українська