Häufig gestellte Fragen
Häufig gestellte Fragen
Wie installiere ich @aspose/3d?
Installieren von npm. Node.js 18 oder höher ist erforderlich:
asposefoss/3d is not yet published — build from source until it ships. See the project README for build instructions.Die Installation überprüfen:
import { Scene } from '@aspose/3d';
const scene = new Scene();
console.log('@aspose/3d ready');TypScript-Typdefinitionen sind mit dem Paket gebündelt. Keine separaten @types/ Das Paket ist notwendig.
Welche Dateiformate werden unterstützt?
| Format der Datenbank | Einfuhr | Ausfuhr |
|---|---|---|
| OBJ | - Ja , das ist gut . | - Ja , das ist gut . |
| GFT-Systeme | - Ja , das ist gut . | - Ja , das ist gut . |
| FBX | Nicht verfügbar* | Nicht verfügbar* |
| STL | - Ja , das ist gut . | - Ja , das ist gut . |
| 3MF | - Ja , das ist gut . | - Ja , das ist gut . |
| COLLADA | - Ja , das ist gut . | - Ja , das ist gut . |
Wie laden wir eine 3D-Datei?
Erstellen einer Scene und rufen Sie an. scene.open():
import { Scene } from '@aspose/3d';
import { ObjLoadOptions } from '@aspose/3d/formats/obj';
const scene = new Scene();
scene.open('model.obj', new ObjLoadOptions());Für Formate, die keine speziellen Optionen benötigen, das zweite Argument weglassen:
const scene = new Scene();
scene.open('model.glb');Ist die Szene offen?
- Nein, ich bin nicht.
scene.open()und .scene.openFromBuffer()sind synchrone Anrufe. Wenn Sie nicht-blockierende E/A benötigen, laufen sie in einem Node.js Worker Thread oder wickeln mitsetImmediate.
Wie kann ich auf glTF/GLB sparen?
Rufen Sie an . scene.save() Das Format wird automatisch von der Erweiterung erkannt:
scene.save('output.glb'); // binary glTF
scene.save('output.gltf'); // JSON glTF
scene.save('output.obj'); // OBJ
scene.save('output.stl'); // STL
Wie lade ich aus einem Puffer (im Speicher)?
Verwendung 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());Fehler: Modul “@aspose/3d/formats/obj” nicht gefunden
Hierfür ist die Auflösung für Pakete von Node.js 12.7+ erforderlich. Stellen Sie sicher, dass Sie auf Node .js 18+ sind. Für TypeScript setzen Sie "moduleResolution": "node16" oder "bundler" in der tsconfig.json:
{
"compilerOptions": {
"moduleResolution": "node16",
"target": "ES2020"
}
}Welcher Typ von Node.entity ist das?
node.entity Um auf netzspezifische Eigenschaften zuzugreifen, prüfen Sie deren Vorhandensein mit der 'controlPoints' in node.entity oder die Verwendung der Mesh Klasse von @aspose/3d/entities:
import { Mesh } from '@aspose/3d/entities';
if (node.entity instanceof Mesh) {
const mesh = node.entity;
console.log(mesh.controlPoints.length);
}Laufen die Bibliotheken im Browser?
Die Bibliothek ist für Node.js konzipiert. Browser-Unterstützung hängt von der Bundlerkonfiguration und dem Ersetzen von Dateisystem-API mit In-Memory-Alternativen ab.
Ist die Bibliothek sicher?
Jeder von ihnen Scene Objekt ist unabhängig. Scene Instanzen von separaten Node.js-Workerschweifern sind sicher, solange Sie keine einzelne Szene über Schweifen ohne externe Synchronisierung teilen.
Welche Node.js-Versionen werden unterstützt?
Node.js 18, 20, and 22 are officially supported. TypeScript 5.0+ is recommended.
Unterstützt @aspose/3d Animationen?
Das Animationssystem beinhaltet: AnimationClip, AnimationChannel, und Schlüsselrahmenkurvenarten, die von der @aspose/3d/animation.