Aspose.3D FOSS for Python

API referenca za aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, MIT license).

Sve klase se uvoze iz aspose.threed paketa ili njegovih podpaketa. Korijenski 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

EnumerationsEnumerations
SceneKontejner najviše razine za sve 3D podatke scene. Sadrži korijenski čvor, metapodatke resursa i animacijske isječke. Izlaže from_file(), open(), i save() kao primarne I/O ulazne točke.
NodeImenovani čvor u hijerarhiji scene. Posjeduje popis podčvorova i popis priloženih Entity objekata poput mreža, kamera i svjetala. Nositi lokalni Transform.
EntityApstraktna bazna klasa za sve objekte koji se mogu priložiti Node. Pruža ime i identitet, ali nema vlastitu geometriju.
SceneObjectBazna klasa koju dijele Node i Entity. Pruža sučelje kolekcije svojstava koje se koristi za korisnički definirane metapodatke.
A3DObjectKorijenska bazna klasa za sve Aspose.3D upravljane objekte. Izlaže svojstvo ime i the Properties kolekcija.
INamedObjectSučelje koje jamči name svojstvo. Implementirano od strane Node, Entity, i nekoliko vrsta opisnika specifičnih za format.

Geometrija i mreža

EnumerationsEnumerations
MeshEntitet poligonalne mreže. Pohranjuje kontrolne točke (položaje vrhova kao Vector4), popisi poligonalnih lica (popisi indeksa kontrolnih točaka), i slojeve elemenata vrhova (normale, UV-ove, boje vrhova).
GeometryApstraktna baza za vrste geometrije nalik mreži. Definira niz kontrolnih točaka i zbirku VertexElement slojeva. Mesh nasljeđuje od Geometry.
VertexElementApstraktna baza za podatkovni sloj pričvršćen uz geometriju (normale, UV-ove, boje, itd.). Sadrži mapping_mode, reference_mode, i data popis.
VertexElementNormalPohranjuje jedan vektor normale po vrhu ili po kutu poligona, ovisno o mapping_mode. Vrijednosti podataka su FVector4 instance (jednostrukog preciznosti) s w neiskorišteno.
VertexElementUVPohranjuje podatke teksturnih koordinata kao FVector4 po vrhu ili po kutu poligona (samo x i y komponenti se koristi za UV). Mreža može nositi više UV slojeva za različite teksturne kanale.
VertexElementVertexColorPohranjuje RGBA podatke boje po‑vertex ili po‑corner kao FVector4 (r, g, b, a u rasponu 0–1).
VertexElementSmoothingGroupPohranjuje cijele ID‑ove grupa zaglađivanja po‑polygon, koje OBJ uvoznik koristi za reproduciranje izvornih dodjela grupa zaglađivanja iz izvorne datoteke.
VertexElementTypeEnumeracija koja identificira semantičku ulogu sloja elementa vrha: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, i ostali. Proslijedite vrijednosti u Mesh.get_element().
MappingModeEnumeracija koja kontrolira kojem primitivnom elementu vrhova vrijednost se mapira: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, ili ALL_SAME.
ReferenceModeEnumeracija koja kontrolira kako su vrijednosti indeksirane: DIRECT (jedna vrijednost po primitivnom mapiranju) ili INDEX_TO_DIRECT (niz vrijednosti plus zaseban niz indeksa).
PolygonModifierStatička pomoćna klasa s metodama za trianguliranje Mesh objekata i cijelih Scene grafova.

Transformacija i prostorni

EnumerationsEnumerations
TransformLokalna transformacija pridružena Node. Pruža translaciju, rotaciju (kao Quaternion), i komponente skaliranja, plus praktična svojstva za Eulerove kutove.
GlobalTransformSamo‑za‑čitanje prikaz transformacije čvora u svjetskom prostoru nakon sastavljanja svih transformacija pretka. Pristupa se putem Node.global_transform.
AssetInfoBlok metapodataka pridružen Scene. Pohranjuje naziv aplikacije za autoriranje, naziv jedinice, faktor skaliranja jedinice, definicije osi koordinatnog sustava i vremenske oznake stvaranja/izmjene.

Materijali i sjenčanje

EnumerationsEnumerations
MaterialApstraktna bazna klasa za sve vrste materijala. Pruža naziv i kolekciju svojstava za numeričke i bojne parametre.
LambertMaterialModel materijala samo difuzni. Pohranjuje ambijentalnu boju, difuznu boju, emisijsku boju i prozirnost. Učitano iz OBJ datoteka koje koriste osnovne Ka/Kd/Ke deklaracije.
PhongMaterialEnumerations LambertMaterial s refleksivnom bojom i sjajnošću (specular exponent). Učitano iz OBJ datoteka koje koriste Ks/Ns deklaracije.
PbrMaterialMaterijal temeljena na fizički zasnovanom renderiranju. Pohranjuje albedo, metalni faktor, faktor hrapavosti i povezane teksture. Koristi se u glTF 2.0 i drugim formatima koji podržavaju PBR.

Kamera i osvjetljenje

EnumerationsEnumerations
CameraEntitet kamere. Samo projection_type i name su funkcionalni u ovom izdanju; sve ostale numeričke svojstva (near_plane, far_plane, field_of_view, aspect_ratio) su zamjenski (stub) koji vraćaju zadane vrijednosti. Priloženo uz Node za definiranje transformacija pogleda.
LightEntitet izvora svjetla. Nasljeđuje od Camera kao zamjenske klase; Light klasa sama po sebi ne izlaže dodatna svojstva u ovom izdanju.
LightTypeEnumeracija podržanih kategorija svjetla: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionTypeEnumeracija načina projekcije kamere: PERSPECTIVE i ORTHOGRAPHIC.

Matematički alati

EnumerationsEnumerations
Vector2Vektor dvostruke preciznosti s 2 komponente (x, y). Koristi se za UV koordinate teksture.
Vector3Vektor dvostruke preciznosti s 3 komponente (x, y, z). Koristi se za pozicije, smjerove i skaliranje.
Vector4Vektor s dvostrukom preciznošću, 4 komponente (x, y, z, w). Korišten za kontrolne točke (homogena položaja) i normalne podatke.
FVector2Vektor s jednostrukom preciznošću, 2 komponente, tipa float. Interno se koristi za kompaktno pohranjivanje u nizovima podataka elementa vrha.
FVector3Vektor s jednostrukom preciznošću, 3 komponente, tipa float. Pojavljuje se u nizovima podataka elementa vrha za normale i tangente.
FVector4Jednostrukog preciznog 4‑komponentnog float vektora. Tip pohrane za VertexElementFVector.data.
QuaternionJedinični kvaternion za predstavljanje rotacija (w, x, y, z). Koristi se u Transform.rotation.
Matrix44×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxOkvir poravnat s osima definiran s minimum i maximum Vector3 kutova. Koristi se za prostorne upite i pomoćne alate za frustum culling.

Enumerations

EnumerationsEnumerations
AnimationClipImenovani kontejner za skup animiranih kanala koji pokrivaju jedan raspon reprodukcije. A Scene može sadržavati više isječaka (npr. “Walk”, “Run”).
AnimationNodePovezuje AnimationClip s određenim čvorom scene ili svojstvom. Djeluje kao most između podataka isječaka i objekata grafova scene.
AnimationChannelJedan animirani tok svojstva unutar isječka, usmjeren na imenovano svojstvo objekta (npr., Transform.translation.x).
KeyFrameJedan uzorak vremena‑vrijednosti unutar KeyframeSequence. Pohranjuje vrijeme (u sekundama) i vrijednost u tom trenutku.
KeyframeSequenceUređeni popis KeyFrame objekata za jedan skalarnu kanal, zajedno s postavkama interpolacije i ekstrapolacije.
InterpolationEnumeracija načina interpolacije između ključnih okvira: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE.
ExtrapolationTypeEnumeracija ponašanja izvan prvog i posljednjeg ključnog okvira: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE.

U/I formata

EnumerationsEnumerations
Scene.from_file(path)Statička metoda. Otvara datoteku na path, otkriva format iz ekstenzije i vraća popunjen Scene. Pokreće iznimku kada datoteka nije pronađena ili format nije podržan.
Scene.open(path, options=None)Metoda instance. Otvara datoteku u postojeću Scene instancu, po želji koristeći format-specifičnu LoadOptions podklasu.
Scene.save(path, options=None)Metoda instance. Serijalizira scenu u path koristeći format izveden iz ekstenzije, po želji koristeći format-specifičnu SaveOptions podklasu.
FileFormatRegistar podržanih formata datoteka. Sadrži unose poput FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. Varijante specifične za format pristupaju se putem klasa opcija (npr., ColladaSaveOptions, GltfSaveOptions).
IOServiceInterna I/O apstrakcija koju koriste uvoznici i izvoznici formata. Obično se ne koristi izravno u kodu aplikacije.
LoadOptionsOsnovna klasa za sve objekte opcija učitavanja specifične za format. Podklasa od ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions.
SaveOptionsOsnovna klasa za sve objekte opcija spremanja specifične za format. Podklasa od ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions.

OBJ format

EnumerationsEnumerations
ObjImporterInterna klasa uvoznika koja parsira Wavefront OBJ i MTL datoteke. Automatski se poziva od strane Scene.from_file() za .obj ekstenzije.
ObjLoadOptionsOpcije učitavanja za Wavefront OBJ datoteke. Ključna svojstva: flip_coordinate_system, scale, enable_materials, normalize_normal.
ObjSaveOptionsSpremi opcije za Wavefront OBJ izlaz. Kontrolira normale, UV-ove, reference materijala i način oblaka točaka.
ObjFormatOpis formata za Wavefront OBJ. Dostupan kao FileFormat.WAVEFRONT_OBJ().

STL format

EnumerationsEnumerations
StlImporterInterni uvoznik koji čita i binarne i ASCII STL datoteke. Automatski odabran prema ekstenziji.
StlExporterInterni izvoznik koji zapisuje STL.
StlLoadOptionsUčitaj opcije za STL datoteke. Podržava flip_coordinate_system i scale.
StlSaveOptionsOpcije spremanja za STL izlaz. Kontrolira binary_mode, scale, i flip_coordinate_system.
StlFormatOpis formata za STL.

glTF format

EnumerationsEnumerations
GltfLoadOptionsUčitaj opcije za glTF 2.0 i GLB datoteke. Ključna svojstva: flip_tex_coord_v.
GltfSaveOptionsOpcije spremanja 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

EnumerationsEnumerations
FbxLoadOptionsUčitaj opcije za FBX datoteke. Ključna svojstva: keep_builtin_global_settings, compatible_mode.
FbxSaveOptionsOpcije spremanja za FBX izlaz. Kontrolira kompresiju, ugrađivanje tekstura i svojstva materijala.
FbxFormatOpis formata za FBX. Dostupan kao FileFormat.FBX7400ASCII().

COLLADA format

EnumerationsEnumerations
ColladaLoadOptionsUčitaj opcije za COLLADA (.dae) datoteke. Kontrolira remapiranje osi i skalu jedinica pri uvozu.
ColladaSaveOptionsOpcije spremanja za COLLADA izlaz. Kontrolira indented, flip_coordinate_system, i izvoz materijala.
ColladaFormatOpis formata za COLLADA. Automatski se određuje iz .dae ekstenzije datoteke.

3MF Format

EnumerationsEnumerations
ThreeMfLoadOptionsOpcije učitavanja za 3MF (.3mf) datoteka.
ThreeMfSaveOptionsSpremi opcije za 3MF izlaz. 3MF je preferirani format za radne tokove 3D ispisa.
ThreeMfFormatOpis formata za 3MF. Dostupan kao FileFormat.MICROSOFT_3MF_FORMAT().

Enumerations

EnumerationsEnumerations
TextureMappingIdentificira kako se tekstura mapira na geometriju: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, itd.
BooleanOperationTip CSG Boolean operacije: UNION, DIFFERENCE, INTERSECTION.

Sustav svojstava

EnumerationsEnumerations
PropertyJedno imenovano tipizirano svojstvo na A3DObject. Pohranjuje naziv svojstva, opis tipa i trenutnu vrijednost.
PropertyCollectionIterabilna kolekcija od Property objekti priloženi na A3DObject. Podržava pretraživanje po imenu i iteraciju kroz sva definirana svojstva.
CustomObjectLagan A3DObject podklasa koja nosi samo ime i proizvoljno PropertyCollection. Koristi se za pohranu korisnički definiranih metapodataka na objektima scene.

Slika i render

EnumerationsEnumerations
ImageRenderOptionsOpcije za softversku rasterizaciju pri renderiranju scene u slikovni međuspremnik. Pohranjuje boju pozadine, dimenzije slike i referencu kamere. Ova značajka je dostupna u podržanim konfiguracijama.

Vidi također

 Hrvatski