Scene — Aspose.3D FOSS for .NET
Example
Example Scene class в Aspose.3D служит корневым контейнером для 3D‑контента, управляя объектами верхнего уровня и обеспечивая управление отношениями родитель/дочерний в иерархии сцены. Он предоставляет доступ к корневым узлам и подсценам, образуя точку входа для загрузки, построения и сохранения 3D‑сцен.
using Aspose.ThreeD;
// Create an empty scene
var scene = new Scene();
// Access the root node
Node root = scene.RootNode;Example
Example Scene класс может быть инстанцирован без аргументов для создания пустой сцены.
using Aspose.ThreeD;
// Empty scene
var scene = new Scene();
// Set name via property
scene.Name = "myScene";
// Access the root node
Node root = scene.RootNode;Example
| Example | Example | Example | Example |
|---|---|---|---|
RootNode | Node | получить | Корневой узел иерархии сцены |
AssetInfo | AssetInfo | получить/установить | Метаданные ресурса, такие как автор, дата создания и единицы измерения |
AnimationClips | List<AnimationClip> | получить | Анимационные клипы, определённые в сцене |
CurrentAnimationClip | AnimationClip | get/set | Текущий активный анимационный клип |
Library | IList<A3DObject> | get | Пользовательские объекты метаданных, прикреплённые к сцене |
Name | string | get/set | Имя объекта сцены |
Properties | PropertyCollection | get | Пользовательские свойства, прикреплённые к сцене |
Example
| Example | Тип возвращаемого значения | Example |
|---|---|---|
Open(string filePath) | void | Открывает файл в этой сцене; формат определяется по расширению |
Open(string filePath, LoadOptions options) | void | Открывает файл с параметрами загрузки, специфичными для формата |
Open(Stream stream) | void | Открывает из потока с автоматическим определением |
Open(Stream stream, LoadOptions options) | void | Открывает из потока с параметрами загрузки, специфичными для формата |
Open(Stream stream, string fileName) | void | Открывает из потока, используя имя файла для определения формата |
Save(string filePath) | void | Сохраняет сцену в файл; формат определяется по расширению |
Save(string filePath, FileFormat format) | void | Сохраняет сцену в указанном FileFormat |
Save(string filePath, SaveOptions options) | void | Сохраняет, используя параметры сохранения, специфичные для формата |
Save(Stream stream, SaveOptions options) | void | Сохраняет в поток, используя параметры сохранения, специфичные для формата |
CreateAnimationClip(string name) | AnimationClip | Создаёт новый именованный анимационный клип |
GetAnimationClip(string name) | AnimationClip | Находит существующий анимационный клип по имени, или null если не найден |
Clear() | void | Очищает всё содержимое сцены |
Example
Создайте сцену, добавьте узел‑коробку и сохраните в формате GLB:
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Formats;
// Create scene with a box primitive
var scene = new Scene();
var box = new Box(2, 2, 2);
var node = scene.RootNode.CreateChildNode("BoxNode", box);
// Save as GLB (format inferred from .glb extension)
scene.Save("box.glb");