Aspose.3D FOSS for TypeScript
API-referentie voor @aspose/3d versie 24.12.0. Installeer via:
npm install @aspose/3dRuntime: 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
LambertMaterialmet 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
- Kennisbank: Stapsgewijze handleidingen
- Gedetailleerd API-overzicht
- Scene-klasse
- Node-klasse
- Mesh-klasse
- Transform-klasse
- GlobalTransform-klasse
- Camera-klasse
- Light-klasse
- Vector3-klasse
- Quaternion-klasse
- Matrix4-klasse
- BoundingBox-klasse
- Materiaal, LambertMaterial, PhongMaterial, PbrMaterial
- Formaat Laad- en Opslaanopties
- Vector2, Vector4 referentie
- Property, PropertyCollection, AssetInfo referentie
- A3DObject, SceneObject, Entity referentie
- VertexElement, VertexElementNormal, VertexElementUV referentie
- Enumeraties referentie
- npm: @aspose/3d
- GitHub: aspose-3d-node