Aspose.3D FOSS for TypeScript
API-reference for @aspose/3d version 24.12.0. Installér via:
npm install @aspose/3dKø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
LambertMaterialmed 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å
- Vidensbase: Sådan-gør-du‑vejledninger
- Detaljeret API‑oversigt
- Scene‑klasse
- Node‑klasse
- Mesh‑klasse
- Transform‑klasse
- GlobalTransform‑klasse
- Camera‑klasse
- Light-klasse
- Vector3-klasse
- Quaternion-klasse
- Matrix4-klasse
- BoundingBox-klasse
- Material, LambertMaterial, PhongMaterial, PbrMaterial
- Formatindlæsnings- og gemmeindstillinger
- Vector2, Vector4 reference
- Property, PropertyCollection, AssetInfo reference
- A3DObject, SceneObject, Entity reference
- VertexElement, VertexElementNormal, VertexElementUV reference
- Reference til enumerationer
- npm: @aspose/3d
- GitHub: aspose-3d-node