Бързо начало
Бързо начало
Това ръководство показва най-бързия път от инсталация до зареждане и запазване на 3D файл, използвайки @aspose/3d Пакетът е с лиценз на MIT, чист JavaScript/TypeScript и не изисква местни двоични файлове или специфични за платформа инструменти за изграждане.
Предварителни условия
| Изискване | Детайли |
|---|---|
| Node.js | 18 or later |
| OS | Windows, 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");