Aspose.3D FOSS for TypeScript

API-reference for @aspose/3d version 24.12.0. Installér via:

npm install @aspose/3d

Kørselstid: Node.js 18, 20, 22+ · Sprog: TypeScript 5.0+ / JavaScript (CommonJS) · Licens: MIT


Kerne-scengraf

Rodbeholderen for en 3D-scene. Kald scene.open() eller scene.openFromBuffer() for at indlæse en fil, og scene.save() for at skrive output. Eksponerer scene.rootNode som indgangspunktet til nodehierarkiet.

En navngivet node i scenetræet. Indeholder en Transform, en valgfri entity (mesh, kamera, lys, eller anden SceneObject), og nul eller flere undernoder tilgængelige via childNodes.

Basisklasse for alle objekter, der kan vedhæftes til en Node som dens primære enhed. Underklasset af Mesh, Camera, Light, og andre.

SceneObject

Abstrakt base for navngivne objekter, der tilhører en scene. Tilbyder den name egenskabs- og scenemedlemskabssporing, der deles af noder, enheder og asset-level objekter.

A3DObject

Rodbasisklasse for alle Aspose.3D-objekter. Tilbyder egenskabssystemet (getProperty, setProperty) og den name felt, der arves af hver offentlig klasse.


Geometri og Mesh

Repræsenterer et polygonmesh. Indeholder en controlPoints array af Vector4 vertices og polygondefinitioner oprettet via createPolygon(). Kald triangulate() for at konvertere alle polygoner til trekanter før eksport.

Basisklasse for alle geometrityper. Indeholder controlPoints og samlingen af vertex-elementer (normals, UVs, colors) knyttet til geometrien.

VertexElement

Basisklasse for per-vertex attributkanaler knyttet til en Geometry. Subklasser bærer typede dataarrays og mappingMode / referenceMode metadata.

VertexElementNormal

En VertexElement subklasse, der gemmer overfladenormals. Data gemmes internt som FVector4[] (arvet fra VertexElementFVector). Krævet af de fleste renderere for korrekt belysning.

VertexElementUV

En VertexElement subklasse, der gemmer 2D-teksturkoordinater. Et enkelt mesh kan have flere UV-sæt for forskellige teksturlag.

VertexElementVertexColor

En VertexElement underklasse, der gemmer per-vertex RGBA-farveværdier.

VertexElementType

Oplistning af attributkanaltyperne, som en VertexElement kan repræsentere (f.eks., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).

MappingMode

Enumeration, der styrer hvordan elementdata kortlægges på geometri: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, eller ALL_SAME.

ReferenceMode

Enumeration, der styrer hvordan elementindekser refererer til data: DIRECT (en-til-en) eller INDEX_TO_DIRECT (via et indeksarray).

TextureMapping

Enumeration af teksturkanalsemantik: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, og mere.


Transform og Spatial

Indeholder den lokale position (translation), rotation (rotation som Quaternion), og skala (scaling) af en Node. Ændringer her påvirker noden og alle dens børn.

GlobalTransform

Skrivebeskyttet visning af en nodes verdensrumstransformation, beregnet ved at akkumulere alle forældre Transform værdier. Tilgå via node.globalTransform.

BoundingBox

En aksejusteret begrænsningsboks defineret af en minimum og maximum Vector3 hjørne. Bruges til at beskrive det rumlige omfang af et mesh eller en scene.


Material, LambertMaterial, PhongMaterial, PbrMaterial

Material er den abstrakte grundklasse for alle materialetyper. Tre konkrete implementeringer er tilgængelige:

  • LambertMaterial — kun diffus med omgivende, diffus og udstrålende farvekanaler. Velegnet til ikke-spejlende overflader.
  • PhongMaterial — udvider LambertMaterial med spekulær farve og glans‑egenskaber til Phong-shading.
  • PbrMaterial — fysisk‑baseret renderingsmateriale med metallic, roughness, base-color og normal-map kanaler. Kortlægger direkte til glTF 2.0 PBR-materialemodellen.

Kamera og Belysning

En synspunkt-nodeenhed med projektionstype, synsfelt, nær-/fjern-klippeafstande og egenskaber for billedformat (aspect ratio).

En lys‑kilde nodeenhed. Typen styres af LightType enumerationen.

LightType

Enumeration af understøttede lys‑typer: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.

ProjectionType

Enumeration af kamera‑projektionstilstande: PERSPECTIVE og ORTHOGRAPHIC.


Matematikværktøjer

En tre‑komponent flydende‑punktvektor med x, y, z felter og almindelige aritmetiske metoder (dot, cross, normalize, minus, times). Eksporteret fra @aspose/3d/utilities.

En fire‑komponent flydende‑punktvektor med x, y, z, w felter. Bruges som typen af indgange i Mesh.controlPoints.

En to‑komponent dobbeltpræcisionsvektor med x og y felter. Bruges til UV‑teksturkoordinater.

FVector3

En kompakt tre-komponent enkeltpræcisions-float vektor, der bruges i vertex-elementdatarrays til normaler og tangenter.

En 4×4 transformationsmatrix. Understøtter sammenkædning, inversion, transponering og dekomposition i oversættelse, rotation og skaleringskomponenter. Eksporteret fra @aspose/3d/utilities.

En enhedsquaternion til at repræsentere rotationer uden gimbal-lås. Tilbyder slerp() til glat interpolation og konvertering til/fra Euler-vinkler og Matrix4. Eksporteret fra @aspose/3d/utilities.


AnimationClip

En navngivet, tidsbegrænset samling af AnimationNode spor. Den primære beholder for keyframe-animeringsdata indlæst fra FBX- eller COLLADA-filer.

AnimationNode

Et navngivet animationsspor, der målretter en specifik egenskabssti på et scenobjekt. Indeholder en eller flere AnimationChannel objekter.

AnimationChannel

En enkelt animeret egenskabskanal inden for en AnimationNode. Indeholder en KeyframeSequence af tids-/værdipar.

KeyFrame

En enkelt tids-/værdiprøve i en KeyframeSequence. Indeholder tidsstemplet (i sekunder), værdien og tangentinformation for interpolation.

KeyframeSequence

En ordnet liste over KeyFrame prøver for én egenskabskanal, sammen med Interpolation og Extrapolation indstillinger, der styrer afspilning.

Enumeration af keyframe-interpolationsmåder. Kendte medlemmer inkluderer LINEAR og CONSTANT. Yderligere medlemmer såsom BEZIER kan være tilgængelig.

Definerer adfærd uden for keyframe-intervallet (før den første nøgle og efter den sidste nøgle). Kontrolleret af ExtrapolationType.

StepMode

Enumeration der styrer, hvordan trinvis (konstant) interpolation anvendes ved grænser.

WeightedMode

Enumeration for håndtering af Bezier-tangentvægt: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, eller BOTH.

ExtrapolationType

Enumeration af out-of-range adfærd: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, og OSCILLATE.


Format I/O

FileFormat

Basisbeskrivelse for et 3D-filformat. Hvert understøttet format leverer en konkret singleton via getInstance().

Basisklasse for format‑specifikke importimplementeringer. Ikke instantieret direkte; kaldt internt af scene.open().

Basisklasse for format‑specifikke eksportimplementeringer. Ikke instantieret direkte; kaldt internt af scene.save().

LoadOptions

Basisklasse for format‑specifikke indlæsningsindstillingsobjekter. Overgiv en underklasses instans til scene.open() eller scene.openFromBuffer().

SaveOptions

Basisklasse for format‑specifikke gemmeindstillingsobjekter. Overgiv en underklasses instans til scene.save().

IOService

Intern service‑interface som abstrakterer filsystem‑ og buffer‑I/O for importører og eksportører.


OBJ‑format

OBJ understøtter både import og eksport. Når der gemmes som OBJ, skrives materialebiblioteket (.mtl) skrives automatisk ved siden af .obj filen.

ObjImporter

Intern importør, der læser Wavefront OBJ-filer, løser .mtl materialebiblioteker og udfylder en Scene.Kaldt automatisk når ObjLoadOptions bliver overgivet til scene.open().

ObjExporter

Intern eksportør, der skriver Wavefront OBJ-filer. En ledsager .mtl materialbiblioteket skrives automatisk. Påkaldes når scene.save() målretter en .obj sti.

ObjLoadOptions

Indlæs indstillinger for OBJ-filer. Nøgleegenskaber: enableMaterials (boolesk, standard true), flipCoordinateSystem (boolesk), normalizeNormal (boolesk, standard true), scale (tal). Se Formatindlæsnings- og gemmeindstillinger for fulde detaljer.

ObjSaveOptions

Gem indstillinger for OBJ-eksport. Send til scene.save() for at styre OBJ-uddataadfærd. Se Formatindlæsnings- og gemmeindstillinger for fulde detaljer.

ObjFormat

Formatbeskriver singleton for OBJ. Begge canImport og canExport er true.


glTF-format

GltfImporter

Læser glTF 2.0 JSON (.gltf).glb) filer. Håndterer indlejrede og eksterne bufferreferencer, PBR-materialer, skins og animationsklip.

GltfExporter

Skriver glTF 2.0-output. Når GltfSaveOptions.binaryMode er true, producerer en selvstændig GLB; ellers skriver den en JSON .gltf med en ledsager .bin buffer.

GltfLoadOptions

Indlæsningsindstillinger for glTF/GLB-filer. Styrer bufferopløsning og teksturindlæsningsadfærd.

GltfSaveOptions

Gem indstillinger for glTF/GLB-eksport. Bemærkelsesværdige egenskaber: binaryMode (boolsk, true → GLB, standard false), flipTexCoordV (boolsk, vender UV-vertikal akse, standard true). Se Formatindlæsnings- og gemmeindstillinger for fulde detaljer.

GltfFormat

Formatbeskriver singleton. Hent via GltfFormat.getInstance() og send til scene.save() som det andet argument.


STL-format

StlImporter

Læser både ASCII- og binære STL-filer ind i en Scene der indeholder en enkelt Mesh enhed.

StlExporter

Skriver binær STL. Uddataene indeholder det triangulerede mesh fra scenen; polygoner uden trekanter trianguleres automatisk.

StlLoadOptions

Indlæsningsindstillinger for STL. Styrer om importøren vender normalerne under import.

StlSaveOptions

Gem indstillinger for STL-eksport. Nøgleegenskab: binaryMode (boolsk, standard false). Styrer om output er ASCII eller binær STL. Se Formatindlæsnings- og gemmeindstillinger for fulde detaljer.

StlFormat

Formatbeskriver singleton. Hent via StlFormat.getInstance().


3MF Format

ThreeMfImporter

Læser Open Packaging Convention 3MF-arkiver og udfylder en Scene med mesh-objekter, farver og materialegenskaber.

ThreeMfExporter

Skriver et gyldigt 3MF-arkiv fra den aktuelle scene. Velegnet til 3D-printarbejdsprocesser.

ThreeMfLoadOptions

Indlæsningsindstillinger for 3MF-filer.

ThreeMfSaveOptions

Gemningsindstillinger for 3MF-eksport.

ThreeMfFormat

Formatbeskriver singleton. Hent via ThreeMfFormat.getInstance().


FBX-format

FbxImporter

Læser FBX-binære og ASCII-filer inklusive geometri, materialer, skeletter, blend shapes og animationsklip.

FbxExporter

Skriver FBX-filer fra den aktuelle scene. Både binær og ASCII FBX-uddata understøttes afhængigt af indstillinger.

FbxLoadOptions

Indlæsningsindstillinger for FBX. Styrer om animation, skins og blend shapes importeres.

FbxSaveOptions

Gem indstillinger for FBX-eksport. Nøgleegenskab: embedTextures (boolesk, standard false) Formatindlæsnings- og gemmeindstillinger for fulde detaljer.

FbxFormat

Formatbeskriver singleton. Hent via FbxFormat.getInstance().


COLLADA-format

COLLADA-import og -eksport kræver den xmldom peer-afhængighed, som installeres automatisk med @aspose/3d.

ColladaImporter

Læser COLLADA (.dae) XML-filer ved hjælp af xmldom. Håndterer geometri, materialer, kameraer, lys og animation.

ColladaExporter

Skriver COLLADA XML-uddata fra den aktuelle scene. Velegnet til udveksling med DCC-værktøjer (Blender, Maya osv.).

ColladaFormat

Formatbeskriver singleton. Hent via ColladaFormat.getInstance().


Egenskabssystem

Et typet navn/værdi-par, der kan vedhæftes til enhver A3DObject. Understøtter skalar- og vektortyper.

PropertyCollection

En ordnet beholder af Property objekter. Tilgængelig på enhver A3DObject via properties accessor.

CustomObject

En fri‑form egenskabspose, der udvider A3DObject. Bruges til at gemme vilkårlig metadata, som ikke svarer til en standardklasse.


Asset-info

AssetInfo

Bærer sceneniveau-metadata indlæst fra kildefilen: forfatter, programnavn, oprettelsesdato, enhedsskala og koordinatakseinformation.

ImageRenderOptions

Indstillinger, der styrer hvordan teksturer og billeder opløses og kodes, når der gemmes til formater, der indlejrer billeddata (f.eks. GLB med binaryMode: true).


Se også

 Dansk