Συχνές Ερωτήσεις

Συχνές Ερωτήσεις

Συχνές Ερωτήσεις

Πώς εγκαθιστώ το @aspose/3d;

Εγκατάσταση από npm. Απαιτείται Node.js 18 ή νεότερο:

npm install @aspose/3d

Επαληθεύστε την εγκατάσταση:

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

Οι ορισμοί τύπων TypeScript περιλαμβάνονται στο πακέτο. Δεν απαιτείται ξεχωριστό @types/ πακέτο.


Ποιοι τύποι αρχείων υποστηρίζονται;

ΜορφήΕισαγωγήΕξαγωγή
OBJ (Wavefront)ΝαιΝαι
glTF 2.0 / GLBΝαιΝαι
FBX (Autodesk)Όχι*Όχι*
STL (Stereo Lithography)ΝαιΝαι
3MF (3D Manufacturing)ΝαιΝαι
COLLADA (.dae)ΝαιΝαι

Πώς φορτώνω ένα αρχείο 3D;

Δημιουργήστε ένα Scene και καλέστε scene.open():

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

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

Για μορφές που δεν χρειάζονται ειδικές επιλογές, παραλείψτε το δεύτερο όρισμα:

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

Είναι το scene.open() ασύγχρονο;

Όχι. scene.open() και scene.openFromBuffer() είναι συγχρονικές κλήσεις. Εάν χρειάζεστε μη‑αποκλειστικό I/O, εκτελέστε τις μέσα σε νήμα εργασίας Node.js ή τυλίξτε τις με setImmediate.


Πώς αποθηκεύω σε glTF/GLB;

Καλέστε scene.save() με μια διαδρομή αρχείου. Η μορφή ανιχνεύεται αυτόματα από την επέκταση:

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

Πώς φορτώνω από ένα Buffer (στη μνήμη);

Χρησιμοποιήστε 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());

Σφάλμα: Δεν είναι δυνατή η εύρεση του module ‘@aspose/3d/formats/obj’

Απαιτείται η επίλυση εξαγωγών πακέτου Node.js 12.7+. Βεβαιωθείτε ότι χρησιμοποιείτε Node.js 18+. Για TypeScript, ορίστε "moduleResolution": "node16" ή "bundler" στο tsconfig.json:

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

Ποιος είναι ο τύπος του node.entity?

node.entity είναι γενικού τύπου. Για πρόσβαση σε ιδιότητες συγκεκριμένες για το πλέγμα, ελέγξτε την παρουσία τους με 'controlPoints' in node.entity ή χρησιμοποιήστε την κλάση Mesh από το @aspose/3d/entities:

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

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

Τρέχει η βιβλιοθήκη στο πρόγραμμα περιήγησης;

Η βιβλιοθήκη έχει σχεδιαστεί για το Node.js. Η υποστήριξη του προγράμματος περιήγησης εξαρτάται από τη διαμόρφωση του bundler και τις API του συστήματος αρχείων που αντικαθίστανται με εναλλακτικές στη μνήμη.


Είναι η βιβλιοθήκη ασφαλής ως προς τα νήματα;

Κάθε αντικείμενο Scene είναι ανεξάρτητο. Η χρήση ξεχωριστών περιπτώσεων Scene από ξεχωριστά νήματα εργατών Node.js είναι ασφαλής, εφόσον δεν μοιράζεστε μια ενιαία σκηνή μεταξύ των νημάτων χωρίς εξωτερικό συγχρονισμό.


Ποιες εκδόσεις του Node.js υποστηρίζονται;

Το Node.js 18, 20 και 22 υποστηρίζεται επίσημα. Το TypeScript 5.0+ συνιστάται.


Υποστηρίζει το @aspose/3d τις κινούμενες εικόνες;

Ναι. Το σύστημα animation περιλαμβάνει AnimationClip, AnimationChannel και τύπους καμπυλών κλειδιών προσβάσιμους από @aspose/3d/animation.


Δείτε επίσης

 Ελληνικά