Aspose.3D FOSS for TypeScript
API referenca za @aspose/3d verzija 24.12.0. Instalirajte putem:
npm install @aspose/3dOkruženje: Node.js 18, 20, 22+ · Jezik: TypeScript 5.0+ / JavaScript (CommonJS) · Licenca: MIT
Osnovni graf scene
Korijenski kontejner za 3D scenu. Pozovite scene.open() ili scene.openFromBuffer() za učitavanje datoteke, i scene.save() za pisanje izlaza. Izlaže scene.rootNode kao ulazna točka u hijerarhiju čvorova.
Imenovani čvor u stablu scene. Drži Transform, opcionalni entity (mrežu, kameru, svjetlo ili drugi SceneObject), i nula ili više podčvorova dostupnih putem childNodes.
Osnovna klasa za sve objekte koji se mogu prikačiti na Node kao njegov primarni entitet. Podklasa od Mesh, Camera, Light, i drugi.
SceneObject
Apstraktna baza za imenovane objekte koji pripadaju sceni. Pruža the name praćenje svojstava i članstva u sceni koje dijele čvorovi, entiteti i objekti na razini sredstava.
A3DObject
Osnovna korijenska klasa za sve Aspose.3D objekte. Omogućuje sustav svojstava (getProperty, setProperty) i name polje naslijeđeno od svake javne klase.
Geometrija i mreža
Predstavlja poligonalnu mrežu. Sadrži controlPoints niz Vector4 vrhove i definicije poligona stvorene putem createPolygon(). Pozovite triangulate() za pretvaranje svih poligona u trokute prije izvoza.
Osnovna klasa za sve vrste geometrije. Drži controlPoints i zbirku elemenata vrha (normale, UV-ove, boje) koji su prikačeni uz geometriju.
VertexElement
Osnovna klasa za kanale atributa po vrhu koji su prikačeni uz Geometry. Podklase nose tipizirane nizove podataka i mappingMode / referenceMode metapodatke.
VertexElementNormal
Jedan VertexElement podklasa koja pohranjuje površinske normale. Podaci se interno pohranjuju kao FVector4[] (naslijeđeno iz VertexElementFVector). Potrebno većini renderera za ispravno osvjetljenje.
VertexElementUV
Jedan VertexElement podklasa koja pohranjuje 2D koordinate teksture. Jedna mreža može imati više UV setova za različite teksturne slojeve.
VertexElementVertexColor
A VertexElement podklasa koja pohranjuje RGBA vrijednosti boje po vrhu.
VertexElementType
Enumeracija tipova kanala atributa koje VertexElement može predstavljati (npr.,)., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).
MappingMode
Enumeracija koja kontrolira kako se podaci elementa mapiraju na geometriju: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, ili ALL_SAME.
ReferenceMode
Enumeracija koja kontrolira kako indeksi elemenata referenciraju podatke: DIRECT (jedan-na-jedan) ili INDEX_TO_DIRECT (preko indeksnog polja).
TextureMapping
Enumeracija semantike teksturnih kanala: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, i više.
Transform i Spatial
Drži lokalni položaj (translation), rotaciju (rotation kao Quaternion), i skaliranje (scaling) od Node. Promjene ovdje utječu na čvor i sve njegove potomke.
GlobalTransform
Pogled samo za čitanje transformacije čvora u svjetskom prostoru, izračunatog akumuliranjem svih pretka Transform vrijednosti. Pristup putem node.globalTransform.
BoundingBox
Osa‑poravnan okvir (axis-aligned bounding box) definiran od strane a minimum i maximum Vector3 kut. Koristi se za opisivanje prostorne veličine mreže ili scene.
Material, LambertMaterial, PhongMaterial, PbrMaterial
Material je apstraktna bazna klasa za sve vrste materijala. Dostupna su tri konkretna implementacije:
- LambertMaterial — diffuse-only s ambient, diffuse i emissive color channels. Pogodno za non-specular surfaces.
- PhongMaterial — proširuje
LambertMaterials svojstvima spekularne boje i sjajnosti za Phong sjenčanje. - PbrMaterial — materijal za fizički temeljeno renderiranje s kanalima metalnosti, hrapavosti, osnovne boje i normalne karte. Izravno se mapira na glTF 2.0 PBR model materijala.
Kamera i osvjetljenje
Entitet čvora pogleda s vrstom projekcije, kutom gledanja, udaljenostima bliskog/udaljenog odrezivanja i svojstvima omjera slike.
Entitet čvora izvora svjetla. Vrsta se kontrolira pomoću LightType enumeracije.
LightType
Enumeracija podržanih vrsta svjetla: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType
Enumeracija načina projekcije kamere: PERSPECTIVE i ORTHOGRAPHIC.
Matematički alati
Trozna komponentna vektor s pomičnim zarezom s x, y, z poljima i uobičajenim aritmetičkim metodama (dot, cross, normalize, minus, times). Izvezeno iz @aspose/3d/utilities.
Četverokomponentni vektor s pomičnim zarezom s x, y, z, w poljima. Koristi se kao tip unosa u Mesh.controlPoints.
Dvokomponentni vektor dvostruke preciznosti s x i y poljima. Koristi se za UV teksturne koordinate.
FVector3
Kompaktan vektor s tri komponenta u jednostrukoj preciznosti koji se koristi u nizovima podataka vršnih elemenata za normale i tangente.
4×4 transformacijska matrica. Podržava konkatenaciju, inverziju, transpoziciju i dekompoziciju na komponente pomaka, rotacije i skaliranja. Izvezeno iz @aspose/3d/utilities.
Jedinični kvaternion za predstavljanje rotacija bez gimbal locka. Pruža slerp() za glatku interpolaciju i konverziju prema/od Eulerovih kutova i Matrix4. Izvezeno iz @aspose/3d/utilities.
AnimationClip
Imenovana, vremenski ograničena kolekcija AnimationNode zapisa. Primarni kontejner za podatke animacije ključnih okvira učitane iz FBX ili COLLADA datoteka.
AnimationNode
Imenovana animacijska traka koja cilja određenu putanju svojstva na objektu scene. Sadrži jedan ili više AnimationChannel objekata.
AnimationChannel
Jedan animirani kanal svojstva unutar AnimationNode. Sadrži KeyframeSequence parova vremena/vrijednosti.
KeyFrame
Jedan uzorak vremena/vrijednosti u KeyframeSequence. Sadrži vremensku oznaku (u sekundama), vrijednost i informacije o tangenti za interpolaciju.
KeyframeSequence
Uređeni popis KeyFrame uzoraka za jedan kanal svojstva, zajedno s Interpolation i Extrapolation postavkama koje upravljaju reprodukcijom.
Enumeracija načina interpolacije ključnih okvira. Poznati članovi uključuju LINEAR i CONSTANT. Dodatni članovi poput BEZIER može biti dostupno.
Definira ponašanje izvan raspona ključnih okvira (prije prvog ključa i nakon posljednjeg ključa). Kontrolira ga ExtrapolationType.
StepMode
Enumeracija koja kontrolira kako se korak (konstantna) interpolacija primjenjuje na granicama.
WeightedMode
Enumeracija za upravljanje težinom Bezier tangente: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, ili BOTH.
ExtrapolationType
Enumeracija ponašanja izvan raspona: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, i OSCILLATE.
U/I formata
FileFormat
Osnovni opisnik za 3D format datoteke. Svaki podržani format pruža konkretni singleton putem getInstance().
Osnovna klasa za implementacije uvoza specifične za format. Neinstancira se izravno; poziva interno od strane scene.open().
Osnovna klasa za implementacije izvoza specifične za format. Neinstancira se izravno; poziva interno od strane scene.save().
LoadOptions
Osnovna klasa za objekte opcija učitavanja specifične za format. Proslijedite instancu podklase u scene.open() ili scene.openFromBuffer().
SaveOptions
Osnovna klasa za objekte opcija spremanja specifične za format. Proslijedite instancu podklase u scene.save().
IOService
Interno sučelje usluge koje apstrahira I/O datotečnog sustava i bafera za uvoznike i izvoznike.
OBJ Format
OBJ podržava i uvoz i izvoz. Prilikom spremanja kao OBJ, biblioteka materijala (.mtl) se automatski zapisuje uz .obj datoteku.
ObjImporter
Interni uvoznik koji čita Wavefront OBJ datoteke, razrješava .mtl biblioteke materijala i popunjava Scene. Poziva se automatski kada ObjLoadOptions se proslijedi u scene.open().
ObjExporter
Interni izvoznik koji zapisuje Wavefront OBJ datoteke. Prateći .mtl biblioteka materijala se automatski zapisuje. Poziva se kada scene.save() cilja na .obj put.
ObjLoadOptions
Učitaj opcije za OBJ datoteke. Ključna svojstva: enableMaterials (boolean, zadano true), flipCoordinateSystem (boolean), normalizeNormal (boolean, zadano true), scale (broj). Vidi Opcije učitavanja i spremanja formata za potpune detalje.
ObjSaveOptions
Spremi opcije za OBJ izvoz. Proslijedi scene.save() za kontrolu ponašanja OBJ izlaza. Vidi Opcije učitavanja i spremanja formata za potpune detalje.
ObjFormat
Jedinstveni opisnik formata za OBJ. Oba canImport i canExport su true.
glTF format
GltfImporter
Čita glTF 2.0 JSON (.gltf).glbi binarni GLB (.
GltfExporter
Piše glTF 2.0 izlaz. Kada GltfSaveOptions.binaryMode je true, proizvodi samostalni GLB; inače zapisuje JSON .gltf s pratećim .bin bafer.
GltfLoadOptions
Opcije učitavanja za glTF/GLB datoteke. Kontrolira rezoluciju međuspremnika i ponašanje učitavanja tekstura.
GltfSaveOptions
Opcije spremanja za izvoz glTF/GLB. Značajna svojstva: binaryMode (boolean, true → GLB, zadano false), flipTexCoordV (boolean, preokreće UV vertikalnu os, zadano true). Vidi Opcije učitavanja i spremanja formata za potpune detalje.
GltfFormat
Jedinstveni opisnik formata. Dobijte putem GltfFormat.getInstance() i proslijedite scene.save() kao drugi argument.
STL format
StlImporter
Čita i ASCII i binarne STL datoteke u Scene koja sadrži jedan Mesh entitet.
StlExporter
Piše binary STL. Izlaz sadrži trianguliranu mrežu iz scene; poligoni koji nisu trokuti automatski se trianguliraju.
StlLoadOptions
Učitaj opcije za STL. Kontrolira hoće li uvoznik preokrenuti normale tijekom uvoza.
StlSaveOptions
Opcije spremanja za STL izvoz. Ključna svojstva: binaryMode (boolean, zadano false). Kontrolira je li izlaz ASCII ili binarni STL. Vidi Opcije učitavanja i spremanja formata za potpune detalje.
StlFormat
Jedinstveni opisnik formata. Dobijte putem StlFormat.getInstance().
3MF Format
ThreeMfImporter
Čita Open Packaging Convention 3MF arhive i popunjava a Scene s mrežnim objektima, bojama i svojstvima materijala.
ThreeMfExporter
Zapisuje valjanu 3MF arhivu iz trenutne scene. Pogodno za radne tokove 3D ispisa.
ThreeMfLoadOptions
Opcije učitavanja za 3MF datoteke.
ThreeMfSaveOptions
Opcije spremanja za 3MF izvoz.
ThreeMfFormat
Jedinstveni opisnik formata. Dobijte putem ThreeMfFormat.getInstance().
FBX format
FbxImporter
Čita binarne i ASCII FBX datoteke uključujući geometriju, materijale, skelete, blend oblike i animacijske isječke.
FbxExporter
Zapisuje FBX datoteke iz trenutne scene. Podržan je i binarni i ASCII FBX izlaz, ovisno o opcijama.
FbxLoadOptions
Opcije učitavanja za FBX. Kontrolira se hoće li se animacija, kože i blend oblici uvesti.
FbxSaveOptions
Opcije spremanja za FBX izvoz. Ključna svojstva: embedTextures (boolean, zadano false) Opcije učitavanja i spremanja formata Pogledajte.
FbxFormat
Jedinstveni opisnik formata. Nabavite putem FbxFormat.getInstance().
COLLADA format
Uvoz i izvoz COLLADA zahtijevaju xmldom peer dependency, koja se automatski instalira uz @aspose/3d.
ColladaImporter
Čita COLLADA (.dae) xmldom. Rukuje geometrijom, materijalima, kamerama, svjetlima i animacijom.
ColladaExporter
Zapisuje COLLADA XML izlaz iz trenutne scene. Pogodno za razmjenu s DCC alatima (Blender, Maya, itd.).
ColladaFormat
Jedinstveni opisnik formata. Nabavite putem ColladaFormat.getInstance().
Sustav svojstava
Tipizirani par ime/vrijednost koji se može priložiti bilo kojem A3DObject.
PropertyCollection
Uređeni kontejner od Property objekata. Dostupan na bilo kojem A3DObject preko properties pristupnika.
CustomObject
Slobodni skup svojstava koji proširuje A3DObject. Koristi se za pohranu proizvoljnih metapodataka koji se ne mapiraju na standardnu klasu.
Informacije o sredstvu
AssetInfo
Prenosi metapodatke na razini scene učitane iz izvornog datoteke: autor, naziv aplikacije, datum stvaranja, skala jedinice i informacije o koordinatnim osima.
ImageRenderOptions
Opcije koje kontroliraju kako se teksture i slike razrješavaju i kodiraju prilikom spremanja u formate koji ugrađuju podatke o slici (npr., GLB s binaryMode: true).
Vidi također
- Baza znanja: Vodiči kako‑uraditi
- Detaljni pregled API‑ja
- Klasa Scene
- Klasa Node
- Klasa Mesh
- Klasa Transform
- GlobalTransform klasa
- Camera klasa
- Light klasa
- Vector3 klasa
- Quaternion klasa
- Matrix4 klasa
- BoundingBox klasa
- Material, LambertMaterial, PhongMaterial, PbrMaterial
- Opcije učitavanja i spremanja formata
- Vector2, Vector4 referenca
- Property, PropertyCollection, AssetInfo referenca
- A3DObject, SceneObject, Entity referenca
- VertexElement, VertexElementNormal, VertexElementUV referenca
- Enumeracije referenca
- npm: @aspose/3d
- GitHub: aspose-3d-node