Aspose.3D FOSS for TypeScript

API-referentie voor @aspose/3d versie 24.12.0. Installeer via:

npm install @aspose/3d

Runtime: Node.js 18, 20, 22+ · Taal: TypeScript 5.0+ / JavaScript (CommonJS) · Licentie: MIT


Kern Scene Graph

ImageRenderOptions

De hoofdcontainer voor een 3D-scène. Roep scene.open() of scene.openFromBuffer() om een bestand te laden, en scene.save() om output te schrijven. Biedt scene.rootNode als het toegangspunt tot de knoophierarchie.

ImageRenderOptions

Een benoemde knoop in de sceneboom. Bevat een Transform, een optionele entity (mesh, camera, licht, of andere SceneObject), en nul of meer kindknopen toegankelijk via childNodes.

ImageRenderOptions

Basisklasse voor alle objecten die aan een Node kunnen worden gekoppeld als zijn primaire entiteit. Gesubklasseerd door Mesh, Camera, Light, en anderen.

SceneObject

Abstracte basis voor benoemde objecten die tot een scène behoren. Biedt de name eigenschap- en scène‑lidmaatschapsbijhouden gedeeld door knooppunten, entiteiten en objecten op asset‑niveau.

A3DObject

Root‑basisklasse voor alle Aspose.3D‑objecten. Biedt het eigenschappensysteem (getProperty, setProperty) en de name veld dat door elke openbare klasse wordt geërfd.


Geometrie en Mesh

ImageRenderOptions

Stelt een polygon mesh voor. Bevat een controlPoints array van Vector4 vertices en polygon-definities gemaakt via createPolygon(). Roep triangulate() aan om alle polygonen te converteren naar triangles vóór export.

ImageRenderOptions

Basisklasse voor alle geometrie‑typen. Bevat controlPoints en de collectie vertex‑elementen (normals, UVs, colors) die aan de geometrie zijn gekoppeld.

VertexElement

Basisklasse voor per-vertex attribuutkanalen die aan een Geometry. Subklassen dragen getypeerde data‑arrays en mappingMode / referenceMode metadata.

VertexElementNormal

Een VertexElement subklasse die surface normals opslaat. Data wordt intern opgeslagen als FVector4[] (geërfd van VertexElementFVector). Vereist door de meeste renderers voor correcte belichting.

VertexElementUV

Een VertexElement subklasse die 2D texture coordinates opslaat. Een enkele mesh kan meerdere UV-sets hebben voor verschillende texture‑lagen.

VertexElementVertexColor

A VertexElement subklasse die per-vertex RGBA-kleurwaarden opslaat.

VertexElementType

Enumeratie van de attribuutkanaaltypen die een VertexElement kan vertegenwoordigen (bijv., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).

MappingMode

Enumeratie die bepaalt hoe elementgegevens op geometrie worden gemapt: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, of ALL_SAME.

ReferenceMode

Enumeratie die bepaalt hoe elementindexen naar gegevens verwijzen: DIRECT (een-op-een) of INDEX_TO_DIRECT (via een indexarray).

TextureMapping

Enumeratie van textuurkanaalsemantiek: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, en meer.


Transform en Spatial

ImageRenderOptions

Bevat de lokale positie (translation), rotatie (rotation als Quaternion), en schaal (scaling) van een Node. Wijzigingen hier beïnvloeden het knooppunt en al zijn kinderen.

GlobalTransform

Alleen-lezen weergave van de wereldruimtetransformatie van een knooppunt, berekend door alle voorouderlijke Transform waarden te accumuleren. Toegang via node.globalTransform.

BoundingBox

Een as-uitgelijnde begrenzingsdoos gedefinieerd door een minimum en maximum Vector3 hoek. Wordt gebruikt om de ruimtelijke omvang van een mesh of scène te beschrijven.


ImageRenderOptions

Materiaal, LambertMaterial, PhongMaterial, PbrMaterial

Material is de abstracte basisklasse voor alle materiaaltypes. Drie concrete implementaties zijn beschikbaar:

  • LambertMaterial — alleen diffuse met omgevings-, diffuse- en emissieve kleurkanalen. Geschikt voor niet-speculaire oppervlakken.
  • PhongMaterial — breidt uit LambertMaterial met speculaire kleur- en glans-eigenschappen voor Phong-shading.
  • PbrMaterial — fysiek gebaseerd rendermateriaal met metallic-, ruwheids-, base-color- en normal-map-kanalen. Kaart direct naar het glTF 2.0 PBR material model.

Camera en verlichting

ImageRenderOptions

Een viewpoint node entity met projectietype, gezichtsveld, near/far-clip-afstanden en aspectratio‑eigenschappen.

ImageRenderOptions

Een lichtbron‑node‑entiteit. Type wordt bepaald door de LightType enumeratie.

LightType

Enumeratie van ondersteunde lichtsoorten: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.

ProjectionType

Enumeratie van cameraprojectiemodi: PERSPECTIVE en ORTHOGRAPHIC.


Wiskundige hulpprogramma’s

ImageRenderOptions

Een drievoudige floating-point vector met x, y, z velden en algemene rekenmethoden (dot, cross, normalize, minus, times). Geëxporteerd vanuit @aspose/3d/utilities.

ImageRenderOptions

Een viercomponenten floating-point vector met x, y, z, w velden. Gebruikt als het type van items in Mesh.controlPoints.

ImageRenderOptions

Een tweedelige double-precision vector met x en y velden. Gebruikt voor UV-textuurcoördinaten.

FVector3

Een compacte driewaardige enkelprecisie float-vector die wordt gebruikt in vertex‑elementgegevensarrays voor normalen en tangenten.

ImageRenderOptions

Een 4×4 transformatie-matrix. Ondersteunt concatenatie, inversie, transpositie en decompositie in translatie-, rotatie- en schaalcomponenten. Geëxporteerd vanuit @aspose/3d/utilities.

ImageRenderOptions

Een eenheidsquaternion voor het representeren van rotaties zonder gimbal lock. Biedt slerp() voor soepele interpolatie en conversie naar/van Euler-hoeken en Matrix4. Geëxporteerd vanuit @aspose/3d/utilities.


ImageRenderOptions

AnimationClip

Een benoemde, tijdgebonden collectie van AnimationNode tracks. De primaire container voor keyframe‑animatiedata geladen uit FBX‑ of COLLADA‑bestanden.

AnimationNode

Een benoemd animatietrack dat zich richt op een specifiek eigenschapspad op een scène‑object. Bevat één of meer AnimationChannel objecten.

AnimationChannel

Een enkel geanimeerd eigenschapskanaal binnen een AnimationNode. Bevat een KeyframeSequence van tijd/waarde‑paren.

KeyFrame

Een enkele tijd/waarde‑sample in een KeyframeSequence. Bevat de tijdstempel (in seconden), de waarde en tangentinformatie voor interpolatie.

KeyframeSequence

Een geordende lijst van KeyFrame samples voor één eigenschapskanaal, samen met de Interpolation en Extrapolation instellingen die de weergave regelen.

ImageRenderOptions

Enumeratie van keyframe‑interpolatiemodi. Bekende leden omvatten LINEAR en CONSTANT. Extra leden zoals BEZIER kan beschikbaar zijn.

ImageRenderOptions

Definieert gedrag buiten het keyframe-bereik (voor de eerste sleutel en na de laatste sleutel). Aangestuurd door ExtrapolationType.

StepMode

Enumeratie die bepaalt hoe gestapelde (constante) interpolatie wordt toegepast op grenzen.

WeightedMode

Enumeratie voor het afhandelen van Bezier-tangentgewichten: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, of BOTH.

ExtrapolationType

Opsomming van gedrag buiten bereik: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, en OSCILLATE.


Formaat I/O

FileFormat

Basisdescriptor voor een 3D‑bestandsformaat. Elk ondersteund formaat levert een concrete singleton via getInstance().

ImageRenderOptions

Basisklasse voor formaat‑specifieke importimplementaties. Niet direct geïnstantieerd; intern aangeroepen door scene.open().

ImageRenderOptions

Basisklasse voor formaat‑specifieke exportimplementaties. Niet direct geïnstantieerd; intern aangeroepen door scene.save().

LoadOptions

Basisklasse voor formaat‑specifieke laadoptie‑objecten. Geef een subklasse‑instantie door aan scene.open() of scene.openFromBuffer().

SaveOptions

Basisklasse voor formaat‑specifieke opslaanoptie‑objecten. Geef een subklasse‑instantie door aan scene.save().

IOService

Interne service‑interface die bestands‑systeem‑ en buffer‑I/O abstracteert voor importeurs en exporteurs.


OBJ‑formaat

OBJ ondersteunt zowel import als export. Bij het opslaan als OBJ wordt de materiaallibrary (.mtl) automatisch geschreven naast de .obj bestand.

ObjImporter

Interne importeur die Wavefront OBJ‑bestanden leest, materiaallibraries oplost, .mtl materiaalbibliotheken, en vult een Scene. Automatisch aangeroepen wanneer ObjLoadOptions wordt doorgegeven aan scene.open().

ObjExporter

Interne exporteur die Wavefront OBJ‑bestanden schrijft. Een companion .mtl materiaalbibliotheek wordt automatisch geschreven. Wordt aangeroepen wanneer scene.save() richt zich op een .obj pad.

ObjLoadOptions

Laadopties voor OBJ-bestanden. Belangrijke eigenschappen: enableMaterials (boolean, standaard true), flipCoordinateSystem (boolean), normalizeNormal (boolean, standaard true), scale (nummer). Zie Formaat Laad- en Opslaanopties voor volledige details.

ObjSaveOptions

Sla opties op voor OBJ-export. Geef door aan scene.save() om het gedrag van OBJ-uitvoer te regelen. Zie Formaat Laad- en Opslaanopties voor volledige details.

ObjFormat

Formaatdescriptor singleton voor OBJ. Beide canImport en canExport zijn true.


glTF-formaat

GltfImporter

Leest glTF 2.0 JSON (.gltf) en binaire GLB (.glb) bestanden. Verwerkt ingebedde en externe bufferreferenties, PBR-materialen, skins en animatieclips.

GltfExporter

Schrijft glTF 2.0-uitvoer. Wanneer GltfSaveOptions.binaryMode is true, produceert een zelfstandige GLB; anders schrijft het een JSON .gltf met een bijbehorend bestand .bin buffer.

GltfLoadOptions

Laadopties voor glTF/GLB-bestanden. Regelt de bufferresolutie en het gedrag bij het laden van textures.

GltfSaveOptions

Opslaanopties voor glTF/GLB-export. Opmerkelijke eigenschappen: binaryMode (boolean, true → GLB, standaard false), flipTexCoordV (boolean, draait UV-verticaal-as om, standaard true). Zie Formaat Laad- en Opslaanopties voor volledige details.

GltfFormat

Formaatdescriptor singleton. Verkrijg via GltfFormat.getInstance() en geef door aan scene.save() als tweede argument.


STL-formaat

StlImporter

Leest zowel ASCII- als binaire STL-bestanden in een Scene bevat een enkele Mesh entiteit.

StlExporter

Schrijft binaire STL. De output bevat het getrianguleerde mesh van de scene; niet‑driehoekige polygonen worden automatisch getrianguleerd.

StlLoadOptions

Laadopties voor STL. Bepaalt of de importeur de normaalvectoren omdraait tijdens het importeren.

StlSaveOptions

Opslagopties voor STL-export. Belangrijk eigenschap: binaryMode (boolean, standaard false). Bepaalt of de uitvoer ASCII of binaire STL is. Zie Formaat Laad- en Opslaanopties voor volledige details.

StlFormat

Formaatdescriptor singleton. Verkrijg via StlFormat.getInstance().


3MF Format

ThreeMfImporter

Leest Open Packaging Convention 3MF-archieven en vult een Scene met mesh-objecten, kleuren en materiaaleigenschappen.

ThreeMfExporter

Schrijft een geldig 3MF‑archief vanuit de huidige scene. Geschikt voor 3D‑printworkflows.

ThreeMfLoadOptions

Laadopties voor 3MF-bestanden.

ThreeMfSaveOptions

Opslaanopties voor 3MF-export.

ThreeMfFormat

Formaatdescriptor singleton. Verkrijg via ThreeMfFormat.getInstance().


FBX-indeling

FbxImporter

Leest FBX-binaire en ASCII-bestanden, inclusief geometrie, materialen, skeletten, blend shapes en animatieclips.

FbxExporter

Schrijft FBX-bestanden vanuit de huidige scène. Zowel binaire als ASCII FBX-uitvoer worden ondersteund, afhankelijk van de opties.

FbxLoadOptions

Laadopties voor FBX. Bepaalt of animatie, skins en blend shapes worden geïmporteerd.

FbxSaveOptions

Opslaanopties voor FBX-export. Belangrijke eigenschap: embedTextures (boolean, standaard false). Zie Formaat Laad- en Opslaanopties voor volledige details.

FbxFormat

Formaatdescriptor singleton. Verkrijg via FbxFormat.getInstance().


COLLADA-indeling

COLLADA-import en -export vereisen de xmldom peer dependency, die automatisch wordt geïnstalleerd met @aspose/3d.

ColladaImporter

Leest COLLADA (.dae) XML‑bestanden met behulp van xmldom. Behandelt geometrie, materialen, camera’s, verlichting en animatie.

ColladaExporter

Schrijft COLLADA XML‑output van de huidige scène. Geschikt voor uitwisseling met DCC‑tools (Blender, Maya, enz.).

ColladaFormat

Formaatdescriptor singleton. Verkrijg via ColladaFormat.getInstance().


Eigenschappen‑systeem

ImageRenderOptions

Een getypeerd naam/waarde‑paar dat aan elk kan worden gekoppeld A3DObject. Ondersteunt scalaire en vectorwaarde‑typen.

PropertyCollection

Een geordende container van Property objecten. Toegankelijk op elke A3DObject via de properties accessor.

CustomObject

Een vrij vormgegeven property bag die uitbreidt A3DObject. Gebruikt om willekeurige metadata op te slaan die niet overeenkomt met een standaardklasse.


Asset‑informatie

AssetInfo

Bevat metadata op sceneniveau die uit het bronbestand is geladen: auteur, toepassingsnaam, aanmaakdatum, eenheidsschaal en coördinaat-asinformatie.

ImageRenderOptions

Opties die bepalen hoe texturen en afbeeldingen worden opgelost en gecodeerd bij het opslaan naar formaten die afbeeldingsgegevens insluiten (bijv. GLB met binaryMode: true).


Zie ook

 Nederlands