Aspose.3D FOSS for TypeScript

API-Referenz für @aspose/3d Version 24.12.0. Installation über:

npm install @aspose/3d

Laufzeit: Node.js 18, 20, 22+ · Sprache: TypeScript 5.0+ / JavaScript (CommonJS) · Lizenz: MIT


Kern‑Szenengraph

Methods

Der Hauptcontainer für eine 3D‑Szene. Aufrufen scene.open() oder scene.openFromBuffer() um eine Datei zu laden, und scene.save() um die Ausgabe zu schreiben. Stellt bereit scene.rootNode als Einstiegspunkt in die Knotenhierarchie.

Methods

Ein benannter Knoten im Szenenbaum. Enthält ein Transform, ein optionales entity (Mesh, Kamera, Licht oder anderes SceneObject), und null oder mehr Kindknoten, die zugänglich sind über childNodes.

Methods

Basisklasse für alle Objekte, die an ein Node als seine primäre Entität. Subklassiert von Mesh, Camera, Light, und andere.

SceneObject

Abstrakte Basis für benannte Objekte, die zu einer Szene gehören. Stellt die name Eigenschafts- und Szenenmitgliedschaftsverfolgung, die von Knoten, Entitäten und Asset‑Ebene‑Objekten gemeinsam genutzt wird.

A3DObject

Root‑Basisklasse für alle Aspose.3D‑Objekte. Stellt das Eigenschaftssystem (getProperty, setProperty) und das name Feld, das von jeder öffentlichen Klasse geerbt wird.


Geometrie und Mesh

Methods

Stellt ein Polygonnetz dar. Enthält ein controlPoints Array von Vector4 Vertices und Polygondefinitionen, die über createPolygon(). Aufruf triangulate() um alle Polygone vor dem Export in Dreiecke zu konvertieren.

Methods

Basisklasse für alle Geometrietypen. Enthält controlPoints und die Sammlung von Vertex-Elementen (Normalen, UVs, Farben), die an der Geometrie angehängt sind.

VertexElement

Basisklasse für pro-Vertex-Attributkanäle, die an einem Geometry.Unterklassen enthalten typisierte Datenarrays und mappingMode / referenceMode Metadaten.

VertexElementNormal

Ein VertexElement Unterklasse, die Oberflächennormalen speichert. Daten werden intern gespeichert als FVector4[] (geerbt von VertexElementFVector). Von den meisten Renderern für korrekte Beleuchtung erforderlich.

VertexElementUV

Ein VertexElement Unterklasse, die 2D-Texturkoordinaten speichert. Ein einzelnes Mesh kann mehrere UV-Sets für verschiedene Texturschichten haben.

VertexElementVertexColor

Ein VertexElement Unterklasse, die pro-Vertex RGBA-Farbwerte speichert.

VertexElementType

Aufzählung der Attributkanaltypen, die ein VertexElement repräsentieren kann (z. B., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).

MappingMode

Aufzählung, die steuert, wie Elementdaten auf Geometrie abgebildet werden: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, oder ALL_SAME.

ReferenceMode

Aufzählung, die steuert, wie Elementindizes auf Daten verweisen: DIRECT (eins-zu-eins) oder INDEX_TO_DIRECT (über ein Index-Array).

TextureMapping

Aufzählung der Texturkanal‑Semantiken: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, und mehr.


Transform und Spatial

Methods

Enthält die lokale Position (translation), Rotation (rotation als Quaternion), und Skalierung (scaling) eines Node. Änderungen hier wirken sich auf den Knoten und alle seine Kinder aus.

GlobalTransform

Nur-Leseansicht der Welt‑Raum‑Transformation eines Knotens, berechnet durch das Aufsummieren aller Vorgänger Transform Werte. Zugriff über node.globalTransform.

BoundingBox

Eine achsenparallel ausgerichtete Bounding-Box, definiert durch ein minimum und maximum Vector3 Ecke. Wird verwendet, um die räumliche Ausdehnung eines Meshes oder einer Szene zu beschreiben.


Methods

Material, LambertMaterial, PhongMaterial, PbrMaterial

Material ist die abstrakte Basisklasse für alle Materialtypen. Drei konkrete Implementierungen stehen zur Verfügung:

  • LambertMaterial — nur diffus mit Umgebungs‑, Diffus‑ und Emissionsfarbkanälen. Geeignet für nicht‑spekulare Oberflächen.
  • PhongMaterial — erweitert LambertMaterial mit spekularem Farb‑ und Glanzlichteeigenschaften für Phong‑Shading.
  • PbrMaterial — physikalisch basiertes Rendering‑Material mit Metall‑, Rauheits‑, Basisfarb‑ und Normal‑Map‑Kanälen. Bildet direkt das glTF 2.0‑PBR‑Materialmodell ab.

Kamera und Beleuchtung

Methods

Ein Sichtpunkt-Knoten-Entität mit Projektionstyp, Sichtfeld, Nah-/Fern-Clipping-Abständen und Seitenverhältnis-Eigenschaften.

Methods

Ein Lichtquellen‑Knoten‑Entität. Der Typ wird gesteuert durch die LightType Aufzählung.

LightType

Aufzählung der unterstützten Lichtarten: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.

ProjectionType

Aufzählung der Kameraprojektionsmodi: PERSPECTIVE und ORTHOGRAPHIC.


Mathe‑Hilfsfunktionen

Methods

Ein dreikomponentiger Gleitkomma-Vektor mit x, y, z Feldern und üblichen arithmetischen Methoden (dot, cross, normalize, minus, times). Exportiert aus @aspose/3d/utilities.

Methods

Ein vierkomponentiger Gleitkomma-Vektor mit x, y, z, w Feldern. Verwendet als Typ von Einträgen in Mesh.controlPoints.

Methods

Ein zweikomponentiger Doppelpräzisions-Vektor mit x und y Feldern. Verwendet für UV-Texturkoordinaten.

FVector3

Ein kompakter dreikomponentiger Gleitkomma‑Vektor einfacher Genauigkeit, der in Vertex‑Element‑Datenarrays für Normalen und Tangenten verwendet wird.

Methods

Eine 4×4-Transformationsmatrix. Unterstützt Verkettung, Inversion, Transposition und Zerlegung in Übersetzungs-, Rotations- und Skalierungskomponenten. Exportiert aus @aspose/3d/utilities.

Methods

Ein unit quaternion zur Darstellung von Rotationen ohne Gimbal-Lock. Bietet slerp() für sanfte Interpolation und Konvertierung zu/von Euler angles und Matrix4. Exportiert aus @aspose/3d/utilities.


Methods

AnimationClip

Eine benannte, zeitlich begrenzte Sammlung von AnimationNode Tracks. Der primäre Container für Keyframe-Animationsdaten, die aus FBX- oder COLLADA-Dateien geladen werden.

AnimationNode

Ein benannter Animations-Track, der einen bestimmten property path auf einem Szenenobjekt anspricht. Enthält ein oder mehrere AnimationChannel Objekte.

AnimationChannel

Ein einzelner animierter property channel innerhalb eines AnimationNode. Enthält ein KeyframeSequence von time/value pairs.

KeyFrame

Ein einzelnes time/value sample in einem KeyframeSequence. Enthält den Zeitstempel (in Sekunden), den Wert und Tangenteninformationen für die Interpolation.

KeyframeSequence

Eine geordnete Liste von KeyFrame Samples für einen Eigenschaftskanal, zusammen mit dem Interpolation und Extrapolation Einstellungen, die die Wiedergabe steuern.

Methods

Aufzählung der Schlüsselbild-Interpolationsmodi. Bekannte Mitglieder umfassen LINEAR und CONSTANT. Zusätzliche Mitglieder wie BEZIER könnten verfügbar sein.

Methods

Definiert das Verhalten außerhalb des Schlüsselbildbereichs (vor dem ersten Schlüssel und nach dem letzten Schlüssel). Gesteuert von ExtrapolationType.

StepMode

Aufzählung, die steuert, wie gestufte (konstante) Interpolation an Grenzen angewendet wird.

WeightedMode

Aufzählung für die Handhabung von Bezier‑Tangenten‑Gewichten: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, oder BOTH.

ExtrapolationType

Aufzählung von Verhaltensweisen außerhalb des Bereichs: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, und OSCILLATE.


Format‑E/A

FileFormat

Basis-Deskriptor für ein 3D-Dateiformat. Jedes unterstützte Format stellt ein konkretes Singleton bereit über getInstance().

Methods

Basisklasse für format-spezifische Import-Implementierungen. Nicht direkt instanziiert; intern aufgerufen von scene.open().

Methods

Basisklasse für format-spezifische Export-Implementierungen. Nicht direkt instanziiert; intern aufgerufen von scene.save().

LoadOptions

Basisklasse für format-spezifische Ladeoption-Objekte. Übergebe eine Instanz einer Unterklasse an scene.open() oder scene.openFromBuffer().

SaveOptions

Basisklasse für format-spezifische Speicheroption-Objekte. Übergebe eine Instanz einer Unterklasse an scene.save().

IOService

Interne Service‑Schnittstelle, die Dateisystem‑ und Puffer‑E/A für Importeure und Exporteure abstrahiert.


OBJ-Format

OBJ unterstützt sowohl Import als auch Export. Beim Speichern als OBJ wird die Materialbibliothek (.mtl) wird automatisch zusammen mit dem .obj Datei.

ObjImporter

Interner Importer, der Wavefront OBJ-Dateien liest, auflöst .mtl Materialbibliotheken und füllt eine Scene. Wird automatisch aufgerufen, wenn ObjLoadOptions an übergeben wird scene.open().

ObjExporter

Interner Exporter, der Wavefront OBJ-Dateien schreibt. Eine begleitende .mtl Materialbibliothek wird automatisch geschrieben. Aufgerufen, wenn scene.save() zielt auf ein .obj Pfad.

ObjLoadOptions

Ladeoptionen für OBJ-Dateien. Wichtige Eigenschaften: enableMaterials (boolesch, Standard true), flipCoordinateSystem (boolesch), normalizeNormal (boolesch, Standardwert true), scale (Zahl). Siehe Optionen zum Laden und Speichern von Formaten für vollständige Details.

ObjSaveOptions

Speicheroptionen für den OBJ-Export. Weitergeben an scene.save() zur Steuerung des OBJ-Ausgabeverhaltens. Siehe Optionen zum Laden und Speichern von Formaten für vollständige Details.

ObjFormat

Formatbeschreiber-Singleton für OBJ. Beide canImport und canExport sind true.


glTF-Format

GltfImporter

Liest glTF 2.0 JSON (.gltf) und binäres GLB (.glb) Dateien. Unterstützt eingebettete und externe Pufferreferenzen, PBR‑Materialien, Skins und Animationsclips.

GltfExporter

Schreibt glTF‑2.0‑Ausgabe. Wenn GltfSaveOptions.binaryMode ist true, erzeugt ein eigenständiges GLB; andernfalls schreibt es ein JSON .gltf mit einem Begleit‑ .bin Puffer.

GltfLoadOptions

Ladeoptionen für glTF/GLB-Dateien. Steuert die Pufferauflösung und das Ladeverhalten von Texturen.

GltfSaveOptions

Speicheroptionen für den glTF/GLB‑Export. Bemerkenswerte Eigenschaften: binaryMode (boolesch, true → GLB, Standard false), flipTexCoordV (boolesch, kippt UV‑Vertikalachse, Standard true). Siehe Optionen zum Laden und Speichern von Formaten für vollständige Details.

GltfFormat

Format-Deskriptor-Singleton. Erhalten über GltfFormat.getInstance() und übergeben an scene.save() als zweites Argument.


STL-Format

StlImporter

Liest sowohl ASCII- als auch Binär-STL-Dateien in ein Scene das ein einzelnes Mesh Entität.

StlExporter

Schreibt binäres STL. Die Ausgabe enthält das triangulierte Mesh aus der Szene; Nicht‑Dreiecks‑Polygone werden automatisch trianguliert.

StlLoadOptions

Ladeoptionen für STL. Steuert, ob der Importer während des Imports Normalen umkehrt.

StlSaveOptions

Speicheroptionen für den STL-Export. Schlüsseleigenschaft: binaryMode (boolean, Standard false). Steuert, ob die Ausgabe ASCII oder Binär-STL ist. Siehe Optionen zum Laden und Speichern von Formaten für vollständige Details.

StlFormat

Formatbeschreiber-Singleton. Erhalten über StlFormat.getInstance().


3MF Format

ThreeMfImporter

Liest Open Packaging Convention 3MF-Archive und füllt ein Scene mit Mesh-Objekten, Farben und Materialeigenschaften.

ThreeMfExporter

Schreibt ein gültiges 3MF-Archiv aus der aktuellen Szene. Geeignet für 3D-Druck-Workflows.

ThreeMfLoadOptions

Ladeoptionen für 3MF-Dateien.

ThreeMfSaveOptions

Speicheroptionen für den 3MF-Export.

ThreeMfFormat

Formatbeschreiber-Singleton. Erhalten über ThreeMfFormat.getInstance().


FBX-Format

FbxImporter

Liest FBX-Binär- und ASCII-Dateien einschließlich Geometrie, Materialien, Skeletten, Blend Shapes und Animationsclips.

FbxExporter

Schreibt FBX-Dateien aus der aktuellen Szene. Sowohl binäre als auch ASCII-FBX-Ausgabe werden je nach Optionen unterstützt.

FbxLoadOptions

Ladeoptionen für FBX. Steuert, ob Animationen, Skins und Blend Shapes importiert werden.

FbxSaveOptions

Speicheroptionen für den FBX-Export. Schlüsseleigenschaft: embedTextures (boolesch, Standardwert false). Siehe Optionen zum Laden und Speichern von Formaten für vollständige Details.

FbxFormat

Formatbeschreiber-Singleton. Erhalten über FbxFormat.getInstance().


COLLADA-Format

COLLADA-Import und -Export erfordern das xmldom peer dependency, die automatisch mit installiert wird @aspose/3d.

ColladaImporter

Liest COLLADA (.dae) XML-Dateien mit xmldom. Verarbeitet Geometrie, Materialien, Kameras, Lichter und Animation.

ColladaExporter

Schreibt COLLADA-XML-Ausgabe aus der aktuellen Szene. Geeignet für den Austausch mit DCC-Tools (Blender, Maya usw.).

ColladaFormat

Format descriptor Singleton. Erhalten über ColladaFormat.getInstance().


Eigenschaften-System

Methods

Ein typisiertes Namens-/Wert-Paar, das an jedes A3DObject. Unterstützt skalare und vektorielle Wertetypen.

PropertyCollection

Ein geordneter Container von Property Objekten. Zugänglich auf jedem A3DObject über den properties Accessor.

CustomObject

Ein freiformiges Property‑Bag, das erweitert A3DObject. Wird verwendet, um beliebige Metadaten zu speichern, die keiner Standardklasse zugeordnet werden können.


Asset-Info

AssetInfo

Enthält szenenbezogene Metadaten, die aus der Quelldatei geladen werden: Autor, Anwendungsname, Erstellungsdatum, Einheitsskala und Koordinatenachsen‑Informationen.

ImageRenderOptions

Optionen, die steuern, wie Texturen und Bilder aufgelöst und kodiert werden, wenn in Formaten gespeichert wird, die Bilddaten einbetten (z. B. GLB mit binaryMode: true).


Siehe auch

 Deutsch