Často kladené otázky

Často kladené otázky

Často kladené otázky

Ako nainštalujem @aspose/3d?

Inštalovať z npm. Vyžaduje sa Node.js 18 alebo novší:

npm install @aspose/3d

Overte inštaláciu:

import { Scene } from '@aspose/3d';
const scene = new Scene();
console.log('@aspose/3d ready');

Definície typov TypeScript sú zahrnuté v balíku. Nie je potrebný žiadny samostatný balík @types/.


Aké formáty súborov sú podporované?

FormátImportExport
OBJ (Wavefront)ÁnoÁno
glTF 2.0 / GLBÁnoÁno
FBX (Autodesk)Nie*Nie*
STL (Stereo Lithography)ÁnoÁno
3MF (3D Manufacturing)ÁnoÁno
COLLADA (.dae)ÁnoÁno

Ako načítam 3D súbor?

Vytvorte Scene a zavolajte scene.open():

import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';

const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());

Pre formáty, ktoré nepotrebujú špeciálne možnosti, vynechajte druhý argument:

const scene = new Scene();
scene.open('model.glb');

Je scene.open() asynchrónna?

Nie. scene.open() a scene.openFromBuffer() sú synchronné volania. Ak potrebujete neblokujúci I/O, spustite ich v rámci vlákna pracovníka Node.js alebo ich zabalte pomocou setImmediate.


Ako uložím do glTF/GLB?

Zavolajte scene.save() s cestou k súboru. Formát sa automaticky detekuje z prípony:

scene.save('output.glb');   // binary glTF
scene.save('output.gltf');  // JSON glTF
scene.save('output.obj');   // OBJ
scene.save('output.stl');   // STL

Ako načítať z Bufferu (v pamäti)?

Použiť 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());

Chyba: Nie je možné nájsť modul ‘@aspose/3d/formats/obj’

Toto vyžaduje riešenie exportov balíka Node.js 12.7+. Uistite sa, že používate Node.js 18+. Pre TypeScript nastavte "moduleResolution": "node16" alebo "bundler" v tsconfig.json:

{
  "compilerOptions": {
    "moduleResolution": "node16",
    "target": "ES2020"
  }
}

Aký je typ node.entity?

node.entity je typovaný všeobecne. Ak chcete získať prístup k špecifickým vlastnostiam siete, skontrolujte ich prítomnosť pomocou 'controlPoints' in node.entity alebo použite triedu Mesh z @aspose/3d/entities:

import { Mesh } from '@aspose/3d/entities';

if (node.entity instanceof Mesh) {
    const mesh = node.entity;
    console.log(mesh.controlPoints.length);
}

Beží knižnica v prehliadači?

Knižnica je navrhnutá pre Node.js. Podpora prehliadača závisí od konfigurácie bundlera a nahradenia API súborového systému alternatívami v pamäti.


Je knižnica bezpečná pre vlákna?

Každý objekt Scene je nezávislý. Používanie samostatných inštancií Scene z oddelených vlákien pracovníkov Node.js je bezpečné, pokiaľ nesdielate jedinú scénu medzi vláknami bez externého synchronizovania.


Aké verzie Node.js sú podporované?

Node.js 18, 20 a 22 sú oficiálne podporované. TypeScript 5.0+ sa odporúča.


Podporuje @aspose/3d animácie?

Áno. Animačný systém zahŕňa AnimationClip, AnimationChannel a typy kriviek kľúčových snímok prístupné z @aspose/3d/animation.


Pozri tiež

 Slovenčina