Često postavljana pitanja
Često postavljana pitanja
Kako instalirati @aspose/3d?
Instalirajte putem npm-a. Potreban je Node.js 18 ili noviji:
npm install @aspose/3dProvjerite instalaciju:
import { Scene } from '@aspose/3d';
const scene = new Scene();
console.log('@aspose/3d ready');TypeScript definicije tipova su uključene u paket. Nije potreban zaseban @types/ paket.
Koji su podržani formati datoteka?
| Format | Uvoz | Izvoz |
|---|---|---|
| OBJ (Wavefront) | Da | Da |
| glTF 2.0 / GLB | Da | Da |
| FBX (Autodesk) | Ne* | Ne* |
| STL (Stereo Lithography) | Da | Da |
| 3MF (3D Manufacturing) | Da | Da |
| COLLADA (.dae) | Da | Da |
Kako učitati 3D datoteku?
Stvori Scene i pozovi scene.open():
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());Za formate koji ne zahtijevaju posebne opcije, izostavite drugi argument:
const scene = new Scene();
scene.open('model.glb');Je li scene.open() asinkron?
Ne. scene.open() i scene.openFromBuffer() su sinkrone pozive. Ako trebate neblokirajući I/O, pokrenite ih unutar radnog niti Node.js ili ih zamotajte s setImmediate.
Kako spremiti u glTF/GLB?
Pozovite scene.save() s putanjom do datoteke. Format se automatski otkriva iz ekstenzije:
scene.save('output.glb'); // binary glTF
scene.save('output.gltf'); // JSON glTF
scene.save('output.obj'); // OBJ
scene.save('output.stl'); // STL
Kako učitati iz bafera (u memoriji)?
Koristite scene.openFromBuffer():
import * as fs from 'fs';
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
const buffer = fs.readFileSync('model.obj');
const scene = new Scene();
scene.openFromBuffer(buffer, new ObjLoadOptions());Greška: Nije moguće pronaći modul ‘@aspose/3d/formats/obj’
Ovo zahtijeva razrješavanje izvoza paketa u Node.js 12.7+. Provjerite da koristite Node.js 18+. Za TypeScript, postavite "moduleResolution": "node16" ili "bundler" u tsconfig.json:
{
"compilerOptions": {
"moduleResolution": "node16",
"target": "ES2020"
}
}Koji je tip node.entity?
node.entity je općenito tipiziran. Za pristup svojstvima specifičnim za mrežu, provjerite njihovo postojanje pomoću 'controlPoints' in node.entity ili upotrijebite klasu Mesh iz @aspose/3d/entities:
import { Mesh } from '@aspose/3d/entities';
if (node.entity instanceof Mesh) {
const mesh = node.entity;
console.log(mesh.controlPoints.length);
}Radi li biblioteka u pregledniku?
Biblioteka je dizajnirana za Node.js. Podrška za preglednike ovisi o konfiguraciji bundlera i zamjeni API-ja datotečnog sustava alternativama u memoriji.
Je li biblioteka thread-safe?
Svaki Scene objekt je neovisan. Korištenje zasebnih Scene instanci iz zasebnih Node.js radnih niti je sigurno sve dok ne dijelite jednu scenu između niti bez vanjske sinkronizacije.
Koje su Node.js verzije podržane?
Node.js 18, 20 i 22 službeno su podržani. Preporuča se TypeScript 5.0+.
Podržava li @aspose/3d animacije?
Da. Sustav animacije uključuje AnimationClip, AnimationChannel i vrste krivulja ključnih okvira dostupne iz @aspose/3d/animation.