Быстрый старт .

Быстрый старт .

В этом руководстве показано, как быстрее загрузить и сохранить 3D-файл с помощью @aspose/3d Для TypeScript. Пакет лицензирован MIT, чистый JavaScript/TypeScript и не требует нативных бинарных систем или специальных инструментов для создания платформы.


Предварительные условия

ТребованиеПодробности
Node.js18 or later
OSWindows, macOS, Linux и Docker. Я не могу позволить себе это.
Пакет@aspose/3d от npm

Установка

Установка пакета из npm. Определения типов скомпоновлены с пакетом, поэтому нет отдельность @types необходим пакет:

npm install @aspose/3d@24.12.0

Загрузить 3D-файл

Позвони . scene.open() с пути для загрузки любого поддерживаемого формата. Библиотека обнаруживает файл Форматировать с расширения файла. Доступ к иерархии сцены через scene.rootNode:

import { Scene } from "@aspose/3d";

const scene = new Scene();
scene.open("model.obj");
console.log(`Root node: ${scene.rootNode.name}`);

Пройдите через график сцены.

Загруженная сцена - это дерево из Node объекты, укорененные в scene.rootNode.Используйте . рекурсивная прогулка для обработки каждого узла и его детей:

import { Scene, Node } from "@aspose/3d";

function walk(node: Node, depth: number = 0): void {
    const indent = " ".repeat(depth * 2);
    console.log(`${indent}Node: ${node.name}`);
    for (const child of node.childNodes) {
        walk(child, depth + 1);
    }
}

const scene = new Scene();
scene.open("model.glb");
walk(scene.rootNode);

Сохранить в другой формат

Библиотека обнаруживает формат вывода из расширения файла. scene.save() с . путь вывода для преобразования между форматами:

import { Scene } from "@aspose/3d";

const scene = new Scene();
scene.open("model.obj");
scene.save("output.glb");
console.log("Converted to GLB.");

Создать новую сцену и сохранить

Создать Scene без аргументов, чтобы начать пустой, добавить подключающие узлы к scene.rootNode, тогда позвони . scene.save() для записи файла:

import { Scene, Node } from "@aspose/3d";

const scene = new Scene();
const box = scene.rootNode.createChildNode("box");
scene.save("new_scene.obj");

Следующие шаги

 Русский