Paketti: @aspose/3d (v24.12.0) Kieli: TypeScript / Node.js 18+ Lisenssi: MIT
@aspose/3d on MIT-lisenssillä varustettu kirjasto 3D‑kohtauksien lukemiseen, rakentamiseen ja viemiseen Node.js:ssä. Se toimitetaan täydellisten TypeScript‑tyyppimääritelmien sekä yhden ajonaikaisen riippuvuuden (xmldom), ja tukee seitsemää tärkeintä 3D‑tiedostomuotoa. Kaikki I/O on synkronista. Natiivisia lisäosia ei vaadita.
Methods
Methods tsconfig.json asetukset oikean alipolun ratkaisemiseksi:
Ydinluokat
Methods
Juurikonttiaineri 3D‑kohtaukselle. Kaikki sisältö; solmut, geometria, materiaalit ja animaatiot; tallennetaan puuhun, jonka juuri on scene.rootNode.Käytä open() / openFromBuffer() tiedoston lataamiseen ja save() / saveToBuffer() vientiä varten.
| Methods | Methods | Methods |
|---|
rootNode | Node | Kohtauksen graafin juuri |
assetInfo | AssetInfo | Tiedoston metatiedot (luoja, yksiköt, koordinaattijärjestelmä) |
animationClips | AnimationClip[] | Kaikki animaatioklipit kohtauksessa |
open(path, opts?) | (string, LoadOptions?) → void | Lataa tiedosto levystä |
openFromBuffer(buf, opts?) | (Buffer, LoadOptions?) → void | Lataa muistipuskurista |
save(path, opts?) | (string, SaveOptions?) → void | Tallenna levylle (muoto päätellään tiedostopäätteestä) |
saveToBuffer(ext, opts?) | (string, SaveOptions?) → Buffer | Tallenna muistipuskurille |
createAnimationClip(name) | (string) → AnimationClip | Luo ja rekisteröi uusi animaatioleike |
Methods
Nimetty puun solmu kohtausgraafissa. Solmut kantavat valinnaisen Entity (mesh, camera, light) ja Transform joka asettaa solmun suhteessa sen vanhempaan.
| Methods | Methods | Methods |
|---|
name | string | Solmun nimi |
childNodes | Node[] | Suorat lapsisolmut |
entity | `Entity | null` |
transform | Transform | Paikallinen siirto, kierto, skaalaus |
materials | Material[] | Tälle solmulle määritetyt materiaalit |
createChildNode(name) | (string) → Node | Lisää lapsisolmu |
getChildNode(name) | `(string) → Node | null` |
Methods
Polygoniverkko; ensisijainen geometria-tyyppi. Laajentaa Geometry.
| Methods | Methods | Methods |
|---|
controlPoints | Vector4[] | Kärkipisteiden sijainnit (w=1 sijainneille) |
polygonCount | number | Polygonien määrä |
createPolygon(indices) | (number[]) → void | Lisää polygoni (kolmio tai nelikulmio) |
getElement(type) | `(VertexElementType) → VertexElement | null` |
createElement(type) | (VertexElementType) → VertexElement | Luo kärki-elementti |
Methods
Paikallinen muunnos, joka on sovellettu solmuun.
| Methods | Methods | Methods |
|---|
translation | Vector3 | Paikallinen sijainti |
eulerAngles | Vector3 | Eulerin kierto asteina (XYZ-järjestys) |
rotation | Quaternion | Kierto kvaternionina |
scaling | Vector3 | Paikallinen skaala |
Materiaaliluokat
| Methods | Methods | Keskeiset ominaisuudet |
|---|
LambertMaterial | Diffuus + ambientti varjostus | diffuseColor, ambientColor, transparency |
PhongMaterial | Lisää spekulaarisen + emissiivisen Lambertiin | specularColor, shininess, emissiveColor |
PbrMaterial | Fysiikaperusteinen glTF 2.0:lle | albedo, metallicFactor, roughnessFactor, emissiveColor |
Matematiikkaluokat
| Methods | Methods |
|---|
Vector3 | 3-component double-precision vector (x, y, z) |
Vector4 | 4-component vector for homogeneous math (x, y, z, w) |
FVector3 | Yhden tarkkuuden variantti, jota käytetään vertex-datassa |
Matrix4 | 4×4 transformation matrix; multiply, invert, decompose |
Quaternion | Kierroskvaternion; fromEulerAngle, toEulerAngles, slerp |
BoundingBox | Akselikohtainen rajauslaatikko; minimum, maximum, center, size, merge |
Animaatioluokat
| Methods | Methods |
|---|
AnimationClip | Nimetty leike; sisältää AnimationNode lista; käytetään kautta scene.animationClips |
AnimationNode | Sidot leikkeen nimettyyn kohtaus solmuun; sisältää AnimationChannel lista |
AnimationChannel | Kohdistaa yhteen ominaisuuteen (esim. translation X); sisältää KeyframeSequence |
KeyframeSequence | Järjestetty lista KeyFrame objekteja, joilla interpolation ja extrapolation |
KeyFrame | Yksi aika/arvopari |
Methods
| Methods | Methods | Methods |
|---|
VertexElementType | NORMAL, UV, VERTEX_COLOR, BINORMAL, TANGENT | Vertex-elementin semantiikka |
MappingMode | CONTROL_POINT, POLYGON_VERTEX, POLYGON, ALL_SAME | Kuinka data kartoitetaan geometriaan |
ReferenceMode | DIRECT, INDEX, INDEX_TO_DIRECT | Indeksointistrategia vertex element -datalle |
Interpolation | CONSTANT, LINEAR, BEZIER | Keyframe-interpolaatio |
Extrapolation | CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE | Käyttäytyminen avainruutujen alueen ulkopuolella |
Formaattimoduulit
Formaattiin spesifiset asetuskoulut viedään alipolku‑moduuleista. Tuo ne erikseen:
OBJ-moduuli (@aspose/3d/formats/obj)
| Methods | Keskeiset asetukset |
|---|
ObjLoadOptions | enableMaterials, flipCoordinateSystem, scale, normalizeNormal |
glTF/GLB-moduuli (@aspose/3d/formats/gltf)
| Methods | Keskeiset asetukset |
|---|
GltfSaveOptions | binaryMode (true → .glb), flipTexCoordV |
GltfFormat | GltfFormat.getInstance(): formaatti‑instanssi kohteelle scene.save() |
STL-moduuli (@aspose/3d/formats/stl)
| Methods | Keskeiset asetukset |
|---|
StlLoadOptions | N/A |
StlSaveOptions | binaryMode (false → ASCII, true → binaari) |
FBX-moduuli (@aspose/3d/formats/fbx)
| Methods | Keskeiset asetukset |
|---|
FbxLoadOptions | N/A |
FbxSaveOptions | embedTextures |
Tuetut formaatit
| Methods | Methods | Methods | Methods |
|---|
| Methods | .obj | Methods | Methods |
| glTF 2.0 | .gltf | Methods | Methods |
| Methods | .glb | Methods | Methods |
| STL | .stl | Methods | Methods |
| FBX | .fbx | Ei* | Ei* |
| COLLADA | .dae | Methods | Methods |
| 3MF | .3mf | Methods | Methods |
Pikaviite-esimerkki
Katso myös