Ofte stilte spørsmål

Ofte stilte spørsmål

Ofte stilte spørsmål

Hvordan installerer jeg @aspose/3d?

Installer fra npm. Node.js 18 eller nyere kreves:

npm install @aspose/3d

Bekreft installasjonen:

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

TypeScript type definitions er inkludert i pakken. Ingen separat @types/-pakke er nødvendig.


Hvilke filformater støttes?

FormatImportEksport
OBJ (Wavefront)JaJa
glTF 2.0 / GLBJaJa
FBX (Autodesk)Nei*Nei*
STL (Stereo Lithography)JaJa
3MF (3D Manufacturing)JaJa
COLLADA (.dae)JaJa

Hvordan laster jeg en 3D‑fil?

Opprett en Scene og kall scene.open():

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

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

For formater som ikke trenger spesielle alternativer, utelat det andre argumentet:

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

Er scene.open() asynkron?

Nei. scene.open() og scene.openFromBuffer() er synkrone kall. Hvis du trenger ikke‑blokkerende I/O, kjør dem i en Node.js‑arbeidertråd eller pakk dem inn med setImmediate.


Hvordan lagrer jeg til glTF/GLB?

Kall scene.save() med en filsti. Formatet oppdages automatisk fra filendelsen:

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

Hvordan laster jeg fra en buffer (i minnet)?

Bruk 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());

Feil: Kan ikke finne modul ‘@aspose/3d/formats/obj’

Dette krever Node.js 12.7+ pakkeeksportoppløsning. Sørg for at du bruker Node.js 18+. For TypeScript, sett "moduleResolution": "node16" eller "bundler" i tsconfig.json:

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

Hva er typen til node.entity?

node.entity er typet bredt. For å få tilgang til mesh‑spesifikke egenskaper, sjekk om de er til stede med 'controlPoints' in node.entity eller bruk Mesh‑klassen fra @aspose/3d/entities:

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

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

Kjører biblioteket i nettleseren?

Biblioteket er designet for Node.js. Nettleserstøtte avhenger av bundler‑konfigurasjon og at filsystem‑API‑er erstattes med minnebaserte alternativer.


Er biblioteket trådsikkert?

Hvert Scene-objekt er uavhengig. Å bruke separate Scene-instanser fra separate Node.js-arbeidertråder er trygt så lenge du ikke deler en enkelt scene på tvers av tråder uten ekstern synkronisering.


Hvilke Node.js‑versjoner støttes?

Node.js 18, 20 og 22 støttes offisielt. TypeScript 5.0+ anbefales.


Støtter @aspose/3d animasjoner?

Ja. Animasjonssystemet inkluderer AnimationClip, AnimationChannel, og nøkkelrammekurvetyper tilgjengelig fra @aspose/3d/animation.


Se også

 Norsk