API nuoroda, skirta aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, MIT licencija).
Visos klasės importuojamos iš aspose.threed paketo arba jo subpaketų. Pagrindinis importas yra:
Pagrindinis scenos grafas
| Methods | Methods |
|---|
Scene | Aukščiausio lygio konteineris visiems 3D scenos duomenims. Laiko šaknies mazgą, išteklių metaduomenis ir animacijos klipus. Pateikia from_file(), open(), ir save() kaip pagrindines I/O įvesties/išvesties taškus. |
Node | Pavadintas mazgas scenos hierarchijoje. Turi vaikų mazgų sąrašą ir prijungtų Entity objektų, tokių kaip tinklai, kameros ir šviesos. Perneša vietinį Transform. |
Entity | Abstrakti bazinė klasė visiems objektams, kuriuos galima prijungti prie Node. Suteikia pavadinimą ir tapatybę, bet neturi savo geometrijos. |
SceneObject | Bazinė klasė, kurią dalijasi Node ir Entity. Suteikia savybių kolekcijos sąsają, naudojamą vartotojo apibrėžtiems metaduomenims. |
A3DObject | Šaknies bazinė klasė visiems Aspose.3D valdomiems objektams. Pateikia pavadinimo savybę ir Properties kolekcija. |
INamedObject | Sąsaja, kuri garantuoja name savybė. Įgyvendinta Node, Entity, ir keli formatui specifiniai deskriptoriaus tipai. |
Geometrija ir tinklas
| Methods | Methods |
|---|
Mesh | Poligonų tinklelio objektas. Saugo valdymo taškus (viršūnių pozicijas kaip Vector4), poligonų veidų sąrašus (valdymo taškų indeksų sąrašus) ir viršūnių elementų sluoksnius (normales, UV, viršūnių spalvas). |
Geometry | Abstrakti bazė tinklelio tipo geometrijoms. Apibrėžia valdymo taškų masyvą ir kolekciją VertexElement sluoksnių. Mesh paveldi iš Geometry. |
VertexElement | Abstrakti bazė duomenų sluoksniui, priskirtam geometrijai (normales, UV, spalvas ir t.t.). Perduoda mapping_mode, reference_mode, ir data sąrašą. |
VertexElementNormal | Saugo vieną normalės vektorių kiekvienai viršūnei arba poligono kampui, priklausomai nuo mapping_mode. Duomenų reikšmės yra FVector4 instancijos (viengubo tikslumo) su w nenaudojama. |
VertexElementUV | Saugo tekstūros koordinatės duomenis kaip FVector4 kiekvienam viršūnei arba kiekvienam daugiakampio kampui (tik x ir y komponentai naudojami UV). Tinklas gali turėti kelis UV sluoksnius skirtingiems tekstūros kanalams. |
VertexElementVertexColor | Saugo RGBA spalvų duomenis vienam viršūnei arba kampui kaip FVector4 (r, g, b, a intervale 0–1). |
VertexElementSmoothingGroup | Saugo vienam daugiakampiui glotninimo grupės sveikųjų skaičių ID, kuriuos naudoja OBJ importuotojas, kad atkurti originalias glotninimo grupės priskyrimus iš šaltinio failo. |
VertexElementType | Išvardinimas, nurodantis semantinį viršūnės elemento sluoksnio vaidmenį: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, ir kiti. Perduokite reikšmes į Mesh.get_element(). |
MappingMode | Išvardijimas, kontroliuojantis, kuriam primityvui susiejama viršūnės elemento reikšmė: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, arba ALL_SAME. |
ReferenceMode | Išvardijimas, kontroliuojantis, kaip indeksuojamos reikšmės: DIRECT (viena reikšmė per susiejimo primityvą) arba INDEX_TO_DIRECT (reikšmių masyvas plius atskiras indeksų masyvas). |
PolygonModifier | Statinė pagalbinė klasė su metodais trikampių sudarymui Mesh objektų ir visų Scene grafų. |
Transformacija ir erdviniai
| Methods | Methods |
|---|
Transform | Vietinė transformacija, priskirta Node. Suteikia perkėlimą, sukimosi (kaip Quaternion), ir mastelio komponentus, bei patogias savybes Eulerio kampams. |
GlobalTransform | Tik skaitymui skirta vaizdas į mazgo pasaulio erdvės transformaciją po visų tėvų transformacijų sujungimo. Pasiekiama per Node.global_transform. |
AssetInfo | Metaduomenų blokas, priskirtas Scene. Saugo autoriaus programos pavadinimą, vieneto pavadinimą, vieneto mastelio koeficientą, koordinatės sistemos ašies apibrėžimus ir sukūrimo/modifikavimo laiko žymas. |
Medžiagos ir šešėliavimas
| Methods | Methods |
|---|
Material | Abstrakti bazinė klasė visiems medžiagų tipams. Suteikia pavadinimą ir savybių kolekciją skaitiniams ir spalvų parametrams. |
LambertMaterial | Tik difuzinis medžiagos modelis. Saugo aplinkos spalvą, difuzinę spalvą, emisijos spalvą ir skaidrumą. Įkeliamas iš OBJ failų, kurie naudoja pagrindines Ka/Kd/Ke deklaracijas. |
PhongMaterial | Methods LambertMaterial su spekuliarine spalva ir blizgesiu (spekuliarinis eksponentas). Įkeliamas iš OBJ failų, kurie naudoja Ks/Ns deklaracijas. |
PbrMaterial | Fizinio pagrindo atvaizdavimo (Physically Based Rendering) medžiaga. Saugo albedo, metalinį faktorių, šiurkštumo faktorių ir susijusias tekstūras. Naudojama glTF 2.0 ir kitų PBR-palaikančių formatų. |
Kamera ir apšvietimas
| Methods | Methods |
|---|
Camera | Kameros objektas. Tik projection_type ir name yra funkciniai šioje versijoje; visi kiti skaitiniai savybės (near_plane, far_plane, field_of_view, aspect_ratio) yra stubai, kurie grąžina numatytąsias reikšmes. Prijungta prie a Node apibrėžti vaizdo taško transformacijas. |
Light | Šviesos šaltinio objektas. Paveldi iš Camera kaip stub klasė; šis Light klasė pati neatskleidžia papildomų savybių šioje versijoje. |
LightType | Palaikomų šviesos kategorijų išvardinimas: POINT, DIRECTIONAL, SPOT, AREA, VOLUME. |
ProjectionType | Kamerų projekcijos režimų išvardijimas: PERSPECTIVE ir ORTHOGRAPHIC. |
Matematinės priemonės
| Methods | Methods |
|---|
Vector2 | Dvigubo tikslumo 2 komponentų vektorius (x, y). Naudojamas UV tekstūros koordinatėms. |
Vector3 | Dvigubo tikslumo 3 komponentų vektorius (x, y, z). Naudojamas pozicijoms, kryptims ir mastui. |
Vector4 | Dvigubo tikslumo 4 komponentų vektorius (x, y, z, w). Naudojamas valdymo taškams (homogeniškoms pozicijoms) ir normalių duomenims. |
FVector2 | Viengubo tikslumo 2 komponentų slankaus kablelio vektorius. Naudojamas viduje kompaktiškam saugojimui viršūnių elementų duomenų masyvuose. |
FVector3 | Viengubo tikslumo 3 komponentų slankaus kablelio vektorius. Pasirodo viršūnių elementų duomenų masyvuose normalių ir tangentų. |
FVector4 | Viengubo tikslumo 4 komponentų slankaus kablelio vektorius. Saugojimo tipas, skirtas VertexElementFVector.data. |
Quaternion | Vienetinis kvaternionas, naudojamas rotacijoms atvaizduoti (w, x, y, z). Naudojamas Transform.rotation. |
Matrix4 | 4×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions. |
BoundingBox | Ašies lygiavietė ribojanti dėžė, apibrėžta minimum ir maximum Vector3 kampais. Naudojama erdviniams užklausoms ir frustumų išfiltravimo pagalbininkams. |
Methods
| Methods | Methods |
|---|
AnimationClip | Pavadintas konteineris, skirtas animuotų kanalų rinkiniui, apimančiam vieną atkūrimo intervalą. A Scene gali turėti kelis klipus (pvz., „Walk“, „Run“). |
AnimationNode | Susieja AnimationClip su konkrečiu scenos mazgu arba savybe. Veikia kaip tiltas tarp klipo duomenų ir scenos grafiko objektų. |
AnimationChannel | Vienas animuotas savybės srautas klipo viduje, nukreiptas į pavadintą savybę objekte (pvz., Transform.translation.x). |
KeyFrame | Vienas laiko–reikšmės mėginys viduje KeyframeSequence. Saugo laiką (sekundėmis) ir reikšmę tuo momentu. |
KeyframeSequence | Surikiuotas sąrašas KeyFrame objektų vienam skaliariniam kanalui, kartu su interpoliacijos ir ekstrapoliacijos nustatymais. |
Interpolation | Interpoliacijos režimų išvardijimas tarp raktinių kadrų: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE. |
ExtrapolationType | Elgsenų išvardijimas, esantis už pirmojo ir paskutinio raktinio kadro: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE. |
Formato įvestis/išvestis
| Methods | Methods |
|---|
Scene.from_file(path) | Statinis metodas. Atveria failą ties path, nustato formatą iš plėtinio ir grąžina užpildytą Scene. Iškelia išimtį, kai failas nerastas arba formatas nepalaikomas. |
Scene.open(path, options=None) | Instance method. Atveria failą į esamą Scene egzempliorių, pasirenkant naudoti formatui specifinį LoadOptions subklasę. |
Scene.save(path, options=None) | Instance method. Serializuoja sceną į path naudodamas formatą, išvestą iš plėtinio, pasirenkant naudoti formatui specifinį SaveOptions subklasę. |
FileFormat | Registras palaikomų failų formatų. Turi įrašus, pvz., FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. Formatui specifiniai variantai pasiekiami per parinkčių klases (pvz., ColladaSaveOptions, GltfSaveOptions). |
IOService | Vidinė I/O abstrakcija, naudojama formatų importuotojų ir eksportuotojų. Paprastai nenaudojama tiesiogiai programų kode. |
LoadOptions | Bazinė klasė visiems formatui specifiniams įkėlimo parinkčių objektams. Paveldima klasėmis ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions. |
SaveOptions | Bazinė klasė visiems formatui specifiniams išsaugojimo parinkčių objektams. Paveldima klasėmis ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions. |
OBJ formatas
| Methods | Methods |
|---|
ObjImporter | Vidinė importuotojo klasė, kuri analizuoja Wavefront OBJ ir MTL failus. Iškviečiama automatiškai Scene.from_file() dėl .obj plėtinių. |
ObjLoadOptions | Įkėlimo parinktys Wavefront OBJ failams. Pagrindinės savybės: flip_coordinate_system, scale, enable_materials, normalize_normal. |
ObjSaveOptions | Išsaugoti parinktis Wavefront OBJ išvesties. Valdo normalės, UV, medžiagų nuorodas ir taškų debesies režimą. |
ObjFormat | Formato aprašas Wavefront OBJ. Prieinamas kaip FileFormat.WAVEFRONT_OBJ(). |
STL formatas
| Methods | Methods |
|---|
StlImporter | Vidinis importuotojas, kuris skaito tiek binarinius, tiek ASCII STL failus. Pasirenkamas automatiškai pagal plėtinį. |
StlExporter | Vidinis eksportuotojas, kuris rašo STL. |
StlLoadOptions | Įkėlimo parinktys STL failams. Palaiko flip_coordinate_system ir scale. |
StlSaveOptions | Išsaugojimo parinktys STL išvesties. Valdo binary_mode, scale, ir flip_coordinate_system. |
StlFormat | Formato aprašas STL. |
glTF formatas
| Methods | Methods |
|---|
GltfLoadOptions | Įkėlimo parinktys glTF 2.0 ir GLB failams. Pagrindinė savybė: flip_tex_coord_v. |
GltfSaveOptions | Išsaugojimo parinktys glTF 2.0 išvesties. Naudokite binary_mode=True savarankiškam GLB paketui. |
GltfFormat | Formato aprašas glTF 2.0 / GLB. Prieinamas kaip FileFormat.GLTF2(). |
FBX formatas
| Methods | Methods |
|---|
FbxLoadOptions | Įkėlimo parinktys FBX failams. Pagrindinės savybės: keep_builtin_global_settings, compatible_mode. |
FbxSaveOptions | Išsaugojimo parinktys FBX išvesties. FBX eksportas sukelia NotImplementedError nepriklausomai nuo sąlygų; FbxSaveOptions yra, bet eksportas neįgyvendintas. |
FbxFormat | Formato aprašas FBX. Prieinamas kaip FileFormat.FBX7400ASCII(). |
COLLADA formatas
| Methods | Methods |
|---|
ColladaLoadOptions | Įkėlimo parinktys COLLADA (.dae) failams. Valdo ašies peradresavimą ir vienetų mastelį importuojant. |
ColladaSaveOptions | Išsaugojimo parinktys COLLADA išvestims. Valdikliai indented, flip_coordinate_system, ir medžiagų eksportavimas. |
ColladaFormat | Formato aprašas COLLADA. Nustatoma automatiškai iš .dae failo plėtinio. |
3MF Format
| Methods | Methods |
|---|
ThreeMfLoadOptions | Įkelti 3MF parinktis (.3mf) failų. |
ThreeMfSaveOptions | Išsaugoti parinktis 3MF išvesties. 3MF yra pageidautiniausias formatas 3D spausdinimo darbo srautams. |
ThreeMfFormat | Formato aprašas 3MF. Prieinamas kaip FileFormat.MICROSOFT_3MF_FORMAT(). |
Methods
| Methods | Methods |
|---|
TextureMapping | Nurodo, kaip tekstūra yra susieta su geometrija: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, ir t.t. |
BooleanOperation | CSG loginės operacijos tipas: UNION, DIFFERENCE, INTERSECTION. |
Savybių sistema
| Methods | Methods |
|---|
Property | Viena pavadinta tipizuota savybė ant A3DObject. Saugo savybės pavadinimą, tipo aprašą ir dabartinę reikšmę. |
PropertyCollection | Iteruojama kolekcija, sudaryta iš Property objektų, priskirtų A3DObject. Palaiko paiešką pagal pavadinimą ir iteraciją per visas apibrėžtas savybes. |
CustomObject | Lengvas A3DObject pakaitinė klasė, kuri nešioja tik pavadinimą ir bet kokį PropertyCollection. Naudojama vartotojo apibrėžtiems metaduomenims saugoti ant scenos objektų. |
Vaizdas ir renderiavimas
| Methods | Methods |
|---|
ImageRenderOptions | Parinktys programinės rasterizacijos metu, kai scena atvaizduojama į vaizdo buferį. Saugo fono spalvą, vaizdo matmenis ir kameros nuorodą. Scene.render() kelia NotImplementedError; atvaizdavimas neįgyvendintas šioje versijoje. |
Žr. taip pat