API referenca za aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, MIT licenca).
Sve klase se uvoze iz aspose.threed paketa ili njegovih podpaketa. Glavni uvoz je:
Osnovni graf scene
| Example | Example |
|---|
Scene | Kontejner najvišeg nivoa za sve 3D podatke scene. Sadrži korenski čvor, metapodatke resursa i animacione klipove. Izlaže from_file(), open(), i save() kao primarne I/O ulazne tačke. |
Node | Nazvani čvor u hijerarhiji scene. Ima listu podčvorova i listu prikačenih Entity objekata kao što su mreže, kamere i svetla. Sadrži lokalni Transform. |
Entity | Apstraktna osnovna klasa za sve objekte koji se mogu prikačiti na Node. Pruža ime i identitet, ali nema sopstvenu geometriju. |
SceneObject | Osnovna klasa koju dele Node i Entity. Pruža interfejs kolekcije svojstava koji se koristi za metapodatke definisane od strane korisnika. |
A3DObject | Korenska osnovna klasa za sve Aspose.3D upravljane objekte. Izlaže svojstvo ime i the Properties kolekcija. |
INamedObject | Interfejs koji garantuje name svojstvo. Implementirano od strane Node, Entity, i nekoliko formata-specifičnih tipova deskriptora. |
Geometrija i mreža
| Example | Example |
|---|
Mesh | Entitet poligonalne mreže. Čuva kontrolne tačke (pozicije vrhova kao Vector4), liste poligonalnih površina (liste indeksa kontrolnih tačaka), i slojeve elemenata vrhova (normale, UV‑ove, boje vrhova). |
Geometry | Apstraktna baza za tipove geometrije slične mreži. Definiše niz kontrolnih tačaka i kolekciju VertexElement slojeva. Mesh nasleđuje od Geometry. |
VertexElement | Apstraktna baza za sloj podataka prikačen geometriji (normale, UV‑ovi, boje, itd.). Sadrži mapping_mode, reference_mode, i data listu. |
VertexElementNormal | Čuva jedan vektor normale po vrhu ili po uglu poligona, u zavisnosti od mapping_mode. Vrednosti podataka su FVector4 instance (jednostruke preciznosti) sa w neiskorišćeno. |
VertexElementUV | Čuva podatke o teksturnim koordinatama kao FVector4 po vrhu ili po uglu poligona (samo x i y komponente se koriste za UV). Mreža može imati više UV slojeva za različite teksturne kanale. |
VertexElementVertexColor | Čuva podatke o RGBA boji po vrhu ili po uglu kao FVector4 (r, g, b, a u opsegu 0–1). |
VertexElementSmoothingGroup | Čuva celobrojne ID‑ove grupa glatkoće po poligonu, koje koristi OBJ uvoznik da reprodukuje originalna dodeljivanja grupa glatkoće iz izvornog fajla. |
VertexElementType | Enumeracija koja identifikuje semantičku ulogu sloja elementa vrha: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, i ostali. Prosledite vrednosti u Mesh.get_element(). |
MappingMode | Enumeracija koja kontroliše kojem primitivnom elementu vrednost vrha se mapira: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, ili ALL_SAME. |
ReferenceMode | Enumeracija koja kontroliše kako su vrednosti indeksirane: DIRECT (jedna vrednost po primitivnom mapiranju) ili INDEX_TO_DIRECT (niz vrednosti plus poseban niz indeksa). |
PolygonModifier | Statička pomoćna klasa sa metodama za triangulaciju Mesh objekata i celokupnih Scene grafikoni. |
Transformacija i prostorni
| Example | Example |
|---|
Transform | Lokalna transformacija prikačena na Node. Pruža translaciju, rotaciju (kao Quaternion), i komponente skaliranja, plus praktična svojstva za Eulerove uglove. |
GlobalTransform | Samo za čitanje prikaz transformacije čvora u svetskom prostoru nakon sastavljanja svih transformacija pretka. Pristupa se putem Node.global_transform. |
AssetInfo | Blok metapodataka prikačen na Scene. Čuva naziv aplikacije za autorstvo, naziv jedinice, faktor skaliranja jedinice, definicije osa koordinatnog sistema i vremenske oznake kreiranja/izmene. |
Materijali i senčenje
| Example | Example |
|---|
Material | Apstraktna bazna klasa za sve tipove materijala. Pruža ime i kolekciju svojstava za numeričke i kolor parametre. |
LambertMaterial | Materijalni model samo difuznog osvetljenja. Čuva ambijentalnu boju, difuznu boju, emisijsku boju i providnost. Učitava se iz OBJ fajlova koji koriste osnovne Ka/Kd/Ke deklaracije. |
PhongMaterial | Example LambertMaterial sa spekularnom bojom i sjajnošću (specularni eksponent). Učitava se iz OBJ fajlova koji koriste Ks/Ns deklaracije. |
PbrMaterial | Materijal zasnovan na fizički baziranom renderovanju (Physically Based Rendering). Čuva albedo, metalni faktor, faktor hrapavosti i povezane teksture. Koristi se u glTF 2.0 i drugim formatima koji podržavaju PBR. |
Kamera i osvetljenje
| Example | Example |
|---|
Camera | Entitet kamere. Samo projection_type i name su funkcionalni u ovom izdanju; sva ostala numerička svojstva (near_plane, far_plane, field_of_view, aspect_ratio) su zamrznuti (stub) koji vraćaju podrazumevane vrednosti. Priloženo uz a Node za definisanje transformacija pogleda. |
Light | Entitet izvora svetla. Nasleđuje od Camera kao stub klasa; Light klasa sama po sebi ne izlaže dodatna svojstva u ovom izdanju. |
LightType | Enumeracija podržanih kategorija svetla: POINT, DIRECTIONAL, SPOT, AREA, VOLUME. |
ProjectionType | Enumeracija režima projekcije kamere: PERSPECTIVE i ORTHOGRAPHIC. |
Matematički alati
| Example | Example |
|---|
Vector2 | Вектор двоструке прецизности са 2 компонента (x, y). Користи се за UV текстурне координате. |
Vector3 | Вектор двоструке прецизности са 3 компонента (x, y, z). Користи се за позиције, правце и скалу. |
Vector4 | Вектор двоструке прецизности са 4 компонента (x, y, z, w). Користи се за контролне тачке (хомогене позиције) и податке о нормалама. |
FVector2 | Вектор једноструке прецизности са 2 компонента (float). Користи се унутар за компактно складиштење у низовима података елементних врхова. |
FVector3 | Вектор једноструке прецизности са 3 компонента (float). Појављује се у низовима података елементних врхова за нормале и тангенте. |
FVector4 | Jednostruko‑precizni vektor od 4 komponente tipa float. Tip skladištenja za VertexElementFVector.data. |
Quaternion | Jedinični kvaternion za predstavljanje rotacija (w, x, y, z). Koristi se od strane Transform.rotation. |
Matrix4 | 4×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions. |
BoundingBox | Axis-aligned bounding box definisan sa minimum i maximum Vector3 uglovima. Koristi se za prostorne upite i pomoćne funkcije za frustum culling. |
Example
| Example | Example |
|---|
AnimationClip | Imenovani kontejner za skup animiranih kanala koji pokrivaju jedan opseg reprodukcije. A Scene može da sadrži više klipova (npr., “Walk”, “Run”). |
AnimationNode | Povezuje AnimationClip na određeni čvor scene ili svojstvo. Djeluje kao most između podataka klipa i objekata grafičkog scene‑grafika. |
AnimationChannel | Jedan animirani tok svojstva unutar klipa, koji cilja imenovano svojstvo na objektu (npr., Transform.translation.x). |
KeyFrame | Jedan uzorak vremena‑vrednosti unutar KeyframeSequence. Čuva vreme (u sekundama) i vrednost u tom trenutku. |
KeyframeSequence | Uređena lista KeyFrame objekata za jedan skalarni kanal, zajedno sa podešavanjima interpolacije i ekstrapolacije. |
Interpolation | Enumeracija režima interpolacije između ključnih okvira: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE. |
ExtrapolationType | Enumeracija ponašanja izvan prvog i poslednjeg ključnog okvira: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE. |
U/I formata
| Example | Example |
|---|
Scene.from_file(path) | Statička metoda. Otvara datoteku na path, otkriva format iz ekstenzije i vraća popunjen Scene. Baca izuzetak kada datoteka nije pronađena ili format nije podržan. |
Scene.open(path, options=None) | Metoda instance. Otvara datoteku u postojeći Scene instancu, opcionalno koristeći format-specifičan LoadOptions podklasu. |
Scene.save(path, options=None) | Instancna metoda. Serijalizuje scenu u path koristeći format izvučen iz ekstenzije, po želji koristeći format-specifičan SaveOptions podklasu. |
FileFormat | Registar podržanih formata fajlova. Sadrži unose kao što su FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. Format-specifične varijante se pristupaju putem klasa opcija (npr., ColladaSaveOptions, GltfSaveOptions). |
IOService | Interna I/O apstrakcija koju koriste importeri i eksporteri formata. Obično se ne koristi direktno u kodu aplikacije. |
LoadOptions | Osnovna klasa za sve format-specifične objekte opcija učitavanja. Podklasirana od strane ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions. |
SaveOptions | Osnovna klasa za sve format-specifične objekte opcija čuvanja. Podklasirana od strane ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions. |
OBJ format
| Example | Example |
|---|
ObjImporter | Interna klasa uvoznika koja parsira Wavefront OBJ i MTL fajlove. Automatski se poziva od strane Scene.from_file() za .obj ekstenzija. |
ObjLoadOptions | Opcije učitavanja za Wavefront OBJ fajlove. Ključna svojstva: flip_coordinate_system, scale, enable_materials, normalize_normal. |
ObjSaveOptions | Opcije čuvanja za Wavefront OBJ izlaz. Kontroliše normale, UV‑ove, reference materijala i režim point‑cloud. |
ObjFormat | Opis formata za Wavefront OBJ. Dostupan kao FileFormat.WAVEFRONT_OBJ(). |
STL format
| Example | Example |
|---|
StlImporter | Interni uvoznik koji čita i binarne i ASCII STL fajlove. Automatski se bira po ekstenziji. |
StlExporter | Interni izvoznik koji piše STL. |
StlLoadOptions | Opcije učitavanja za STL fajlove. Podržava flip_coordinate_system i scale. |
StlSaveOptions | Opcije čuvanja za STL izlaz. Kontroliše binary_mode, scale, i flip_coordinate_system. |
StlFormat | Opis formata za STL. |
glTF format
| Example | Example |
|---|
GltfLoadOptions | Opcije učitavanja za glTF 2.0 i GLB fajlove. Ključno svojstvo: flip_tex_coord_v. |
GltfSaveOptions | Opcije čuvanja za glTF 2.0 izlaz. Koristite binary_mode=True za samostalni GLB paket. |
GltfFormat | Opis formata za glTF 2.0 / GLB. Dostupan kao FileFormat.GLTF2(). |
FBX format
| Example | Example |
|---|
FbxLoadOptions | Opcije učitavanja za FBX fajlove. Ključna svojstva: keep_builtin_global_settings, compatible_mode. |
FbxSaveOptions | Opcije čuvanja za FBX izlaz. Kontroliše kompresiju, ugrađivanje tekstura i svojstva materijala. |
FbxFormat | Opis formata za FBX. Dostupan kao FileFormat.FBX7400ASCII(). |
COLLADA format
| Example | Example |
|---|
ColladaLoadOptions | Opcije učitavanja za COLLADA (.dae) fajlovi. Kontroliše remapiranje osa i skalu jedinica pri uvozu. |
ColladaSaveOptions | Opcije čuvanja za COLLADA izlaz. Kontroliše indented, flip_coordinate_system, i izvoz materijala. |
ColladaFormat | Opis formata za COLLADA. Automatski se otkriva iz .dae ekstenzija fajla. |
3MF Format
| Example | Example |
|---|
ThreeMfLoadOptions | Opcije učitavanja za 3MF (.3mf) fajlova. |
ThreeMfSaveOptions | Opcije čuvanja za 3MF izlaz. 3MF je preferirani format za radne tokove 3D štampe. |
ThreeMfFormat | Opis formata za 3MF. Dostupan kao FileFormat.MICROSOFT_3MF_FORMAT(). |
Example
| Example | Example |
|---|
TextureMapping | Identifikuje kako je tekstura mapirana na geometriju: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, itd. |
BooleanOperation | CSG Boolean operacija tip: UNION, DIFFERENCE, INTERSECTION. |
Sistem svojstava
| Example | Example |
|---|
Property | Jedno imenovano tipizirano svojstvo na A3DObject. Čuva naziv svojstva, opis tipa i trenutnu vrednost. |
PropertyCollection | Iterabilna kolekcija Property objekti prikačeni na A3DObject. Podržava pretragu po imenu i iteraciju kroz sva definisana svojstva. |
CustomObject | Lagan A3DObject podklasa koja nosi samo ime i proizvoljno PropertyCollection. Koristi se za čuvanje korisnički definisanih metadata na objektima scene. |
Slika i render
| Example | Example |
|---|
ImageRenderOptions | Opcije za software rasterisation prilikom renderovanja scene u image buffer. Čuva background colour, image dimensions i camera reference. Ova funkcija je dostupna u supported configurations. |
Vidi takođe