Aspose.3D FOSS for TypeScript

API referenca za @aspose/3d verzija 24.12.0. Instalirajte putem:

npm install @aspose/3d

Okruž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 LambertMaterial s 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

 Hrvatski