Aspose.3D FOSS for Python

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:

import aspose.threed
##or selectively:
from aspose.threed import Scene, Node
from aspose.threed.entities import Mesh, Camera, Light
from aspose.threed.formats import ObjLoadOptions, StlSaveOptions, GltfSaveOptions
from aspose.threed.utilities import Vector3, Matrix4, BoundingBox
from aspose.threed.animation import AnimationClip, KeyFrame

Osnovni graf scene

ExampleExample
SceneKontejner 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.
NodeNazvani č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.
EntityApstraktna osnovna klasa za sve objekte koji se mogu prikačiti na Node. Pruža ime i identitet, ali nema sopstvenu geometriju.
SceneObjectOsnovna klasa koju dele Node i Entity. Pruža interfejs kolekcije svojstava koji se koristi za metapodatke definisane od strane korisnika.
A3DObjectKorenska osnovna klasa za sve Aspose.3D upravljane objekte. Izlaže svojstvo ime i the Properties kolekcija.
INamedObjectInterfejs koji garantuje name svojstvo. Implementirano od strane Node, Entity, i nekoliko formata-specifičnih tipova deskriptora.

Geometrija i mreža

ExampleExample
MeshEntitet 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).
GeometryApstraktna baza za tipove geometrije slične mreži. Definiše niz kontrolnih tačaka i kolekciju VertexElement slojeva. Mesh nasleđuje od Geometry.
VertexElementApstraktna 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.
VertexElementTypeEnumeracija koja identifikuje semantičku ulogu sloja elementa vrha: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, i ostali. Prosledite vrednosti u Mesh.get_element().
MappingModeEnumeracija koja kontroliše kojem primitivnom elementu vrednost vrha se mapira: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, ili ALL_SAME.
ReferenceModeEnumeracija koja kontroliše kako su vrednosti indeksirane: DIRECT (jedna vrednost po primitivnom mapiranju) ili INDEX_TO_DIRECT (niz vrednosti plus poseban niz indeksa).
PolygonModifierStatička pomoćna klasa sa metodama za triangulaciju Mesh objekata i celokupnih Scene grafikoni.

Transformacija i prostorni

ExampleExample
TransformLokalna transformacija prikačena na Node. Pruža translaciju, rotaciju (kao Quaternion), i komponente skaliranja, plus praktična svojstva za Eulerove uglove.
GlobalTransformSamo za čitanje prikaz transformacije čvora u svetskom prostoru nakon sastavljanja svih transformacija pretka. Pristupa se putem Node.global_transform.
AssetInfoBlok 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

ExampleExample
MaterialApstraktna bazna klasa za sve tipove materijala. Pruža ime i kolekciju svojstava za numeričke i kolor parametre.
LambertMaterialMaterijalni 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.
PhongMaterialExample LambertMaterial sa spekularnom bojom i sjajnošću (specularni eksponent). Učitava se iz OBJ fajlova koji koriste Ks/Ns deklaracije.
PbrMaterialMaterijal 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

ExampleExample
CameraEntitet 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.
LightEntitet izvora svetla. Nasleđuje od Camera kao stub klasa; Light klasa sama po sebi ne izlaže dodatna svojstva u ovom izdanju.
LightTypeEnumeracija podržanih kategorija svetla: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionTypeEnumeracija režima projekcije kamere: PERSPECTIVE i ORTHOGRAPHIC.

Matematički alati

ExampleExample
Vector2Вектор двоструке прецизности са 2 компонента (x, y). Користи се за UV текстурне координате.
Vector3Вектор двоструке прецизности са 3 компонента (x, y, z). Користи се за позиције, правце и скалу.
Vector4Вектор двоструке прецизности са 4 компонента (x, y, z, w). Користи се за контролне тачке (хомогене позиције) и податке о нормалама.
FVector2Вектор једноструке прецизности са 2 компонента (float). Користи се унутар за компактно складиштење у низовима података елементних врхова.
FVector3Вектор једноструке прецизности са 3 компонента (float). Појављује се у низовима података елементних врхова за нормале и тангенте.
FVector4Jednostruko‑precizni vektor od 4 komponente tipa float. Tip skladištenja za VertexElementFVector.data.
QuaternionJedinični kvaternion za predstavljanje rotacija (w, x, y, z). Koristi se od strane Transform.rotation.
Matrix44×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxAxis-aligned bounding box definisan sa minimum i maximum Vector3 uglovima. Koristi se za prostorne upite i pomoćne funkcije za frustum culling.

Example

ExampleExample
AnimationClipImenovani kontejner za skup animiranih kanala koji pokrivaju jedan opseg reprodukcije. A Scene može da sadrži više klipova (npr., “Walk”, “Run”).
AnimationNodePovezuje AnimationClip na određeni čvor scene ili svojstvo. Djeluje kao most između podataka klipa i objekata grafičkog scene‑grafika.
AnimationChannelJedan animirani tok svojstva unutar klipa, koji cilja imenovano svojstvo na objektu (npr., Transform.translation.x).
KeyFrameJedan uzorak vremena‑vrednosti unutar KeyframeSequence. Čuva vreme (u sekundama) i vrednost u tom trenutku.
KeyframeSequenceUređena lista KeyFrame objekata za jedan skalarni kanal, zajedno sa podešavanjima interpolacije i ekstrapolacije.
InterpolationEnumeracija režima interpolacije između ključnih okvira: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE.
ExtrapolationTypeEnumeracija ponašanja izvan prvog i poslednjeg ključnog okvira: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE.

U/I formata

ExampleExample
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.
FileFormatRegistar 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).
IOServiceInterna I/O apstrakcija koju koriste importeri i eksporteri formata. Obično se ne koristi direktno u kodu aplikacije.
LoadOptionsOsnovna klasa za sve format-specifične objekte opcija učitavanja. Podklasirana od strane ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions.
SaveOptionsOsnovna klasa za sve format-specifične objekte opcija čuvanja. Podklasirana od strane ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions.

OBJ format

ExampleExample
ObjImporterInterna klasa uvoznika koja parsira Wavefront OBJ i MTL fajlove. Automatski se poziva od strane Scene.from_file() za .obj ekstenzija.
ObjLoadOptionsOpcije učitavanja za Wavefront OBJ fajlove. Ključna svojstva: flip_coordinate_system, scale, enable_materials, normalize_normal.
ObjSaveOptionsOpcije čuvanja za Wavefront OBJ izlaz. Kontroliše normale, UV‑ove, reference materijala i režim point‑cloud.
ObjFormatOpis formata za Wavefront OBJ. Dostupan kao FileFormat.WAVEFRONT_OBJ().

STL format

ExampleExample
StlImporterInterni uvoznik koji čita i binarne i ASCII STL fajlove. Automatski se bira po ekstenziji.
StlExporterInterni izvoznik koji piše STL.
StlLoadOptionsOpcije učitavanja za STL fajlove. Podržava flip_coordinate_system i scale.
StlSaveOptionsOpcije čuvanja za STL izlaz. Kontroliše binary_mode, scale, i flip_coordinate_system.
StlFormatOpis formata za STL.

glTF format

ExampleExample
GltfLoadOptionsOpcije učitavanja za glTF 2.0 i GLB fajlove. Ključno svojstvo: flip_tex_coord_v.
GltfSaveOptionsOpcije čuvanja za glTF 2.0 izlaz. Koristite binary_mode=True za samostalni GLB paket.
GltfFormatOpis formata za glTF 2.0 / GLB. Dostupan kao FileFormat.GLTF2().

FBX format

ExampleExample
FbxLoadOptionsOpcije učitavanja za FBX fajlove. Ključna svojstva: keep_builtin_global_settings, compatible_mode.
FbxSaveOptionsOpcije čuvanja za FBX izlaz. Kontroliše kompresiju, ugrađivanje tekstura i svojstva materijala.
FbxFormatOpis formata za FBX. Dostupan kao FileFormat.FBX7400ASCII().

COLLADA format

ExampleExample
ColladaLoadOptionsOpcije učitavanja za COLLADA (.dae) fajlovi. Kontroliše remapiranje osa i skalu jedinica pri uvozu.
ColladaSaveOptionsOpcije čuvanja za COLLADA izlaz. Kontroliše indented, flip_coordinate_system, i izvoz materijala.
ColladaFormatOpis formata za COLLADA. Automatski se otkriva iz .dae ekstenzija fajla.

3MF Format

ExampleExample
ThreeMfLoadOptionsOpcije učitavanja za 3MF (.3mf) fajlova.
ThreeMfSaveOptionsOpcije čuvanja za 3MF izlaz. 3MF je preferirani format za radne tokove 3D štampe.
ThreeMfFormatOpis formata za 3MF. Dostupan kao FileFormat.MICROSOFT_3MF_FORMAT().

Example

ExampleExample
TextureMappingIdentifikuje kako je tekstura mapirana na geometriju: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, itd.
BooleanOperationCSG Boolean operacija tip: UNION, DIFFERENCE, INTERSECTION.

Sistem svojstava

ExampleExample
PropertyJedno imenovano tipizirano svojstvo na A3DObject. Čuva naziv svojstva, opis tipa i trenutnu vrednost.
PropertyCollectionIterabilna kolekcija Property objekti prikačeni na A3DObject. Podržava pretragu po imenu i iteraciju kroz sva definisana svojstva.
CustomObjectLagan A3DObject podklasa koja nosi samo ime i proizvoljno PropertyCollection. Koristi se za čuvanje korisnički definisanih metadata na objektima scene.

Slika i render

ExampleExample
ImageRenderOptionsOpcije 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

 Српски