Často kladené otázky

Často kladené otázky

Často kladené otázky

Jak nainstaluji @aspose/3d?

Instalace z npm. Je vyžadován Node.js 18 nebo novější:

npm install @aspose/3d

Ověřte instalaci:

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

Definice typů TypeScript jsou součástí balíčku. Není potřeba žádný samostatný @types/ balíček.


Které formáty souborů jsou podporovány?

FormátImportExport
OBJ (Wavefront)AnoAno
glTF 2.0 / GLBAnoAno
FBX (Autodesk)Ne*Ne*
STL (Stereo Lithography)AnoAno
3MF (3D Manufacturing)AnoAno
COLLADA (.dae)AnoAno

Jak načtu 3D soubor?

Vytvořte Scene a zavolejte scene.open():

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

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

Pro formáty, které nevyžadují speciální možnosti, vynechte druhý argument:

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

Je scene.open() asynchronní?

Ne. scene.open() a scene.openFromBuffer() jsou synchronní volání. Pokud potřebujete neblokující I/O, spusťte je uvnitř pracovního vlákna Node.js nebo je zabalte pomocí setImmediate.


Jak uložit do glTF/GLB?

Zavolejte scene.save() s cestou k souboru. Formát je automaticky detekován z přípony:

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

Jak načíst z bufferu (v paměti)?

Použijte 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: Nelze najít modul ‘@aspose/3d/formats/obj’

Toto vyžaduje rozlišení exportů balíčku Node.js 12.7+. Ujistěte se, že používáte Node.js 18+. Pro TypeScript nastavte "moduleResolution": "node16" nebo "bundler" v tsconfig.json:

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

Jaký je typ node.entity?

node.entity je typován obecně. Pro přístup k vlastnostem specifickým pro mesh zkontrolujte jejich přítomnost pomocí 'controlPoints' in node.entity nebo použijte třídu 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);
}

Běží knihovna v prohlížeči?

Knihovna je určena pro Node.js. Podpora prohlížeče závisí na konfiguraci bundleru a nahrazení API souborového systému alternativami v paměti.


Je knihovna bezpečná pro vlákna?

Každý objekt Scene je nezávislý. Používání samostatných instancí Scene z oddělených pracovních vláken Node.js je bezpečné, pokud nesdílíte jedinou scénu mezi vlákny bez externí synchronizace.


Jaké verze Node.js jsou podporovány?

Node.js 18, 20 a 22 jsou oficiálně podporovány. TypeScript 5.0+ se doporučuje.


Podporuje @aspose/3d animace?

Ano. Systém animací zahrnuje AnimationClip, AnimationChannel a typy křivek klíčových snímků přístupné z @aspose/3d/animation.


Viz také

 Čeština