Aspose.3D FOSS for Python

Referencja API dla aspose-3d-foss 26.1.0 (Python 3.7 – 3.12, licencja MIT).

Wszystkie klasy są importowane z aspose.threed pakietu lub jego podpakietów. Główny import to:

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

Podstawowy graf sceny

MethodsMethods
SceneKontener najwyższego poziomu dla wszystkich danych sceny 3D. Zawiera węzeł główny, metadane zasobów i klipy animacji. Udostępnia from_file(), open(), oraz save() jako główne punkty wejścia I/O.
NodeNazwany węzeł w hierarchii sceny. Posiada listę węzłów potomnych oraz listę dołączonych Entity obiektów, takich jak siatki, kamery i światła. Zawiera lokalne Transform.
EntityAbstrakcyjna klasa bazowa dla wszystkich obiektów, które mogą być dołączone do a Node. Dostarcza nazwę i tożsamość, ale nie posiada własnej geometrii.
SceneObjectKlasa bazowa współdzielona przez Node i Entity. Dostarcza interfejs kolekcji właściwości używany do metadanych definiowanych przez użytkownika.
A3DObjectPodstawowa klasa bazowa dla wszystkich zarządzanych obiektów Aspose.3D. Udostępnia właściwość name oraz Properties kolekcję.
INamedObjectInterfejs, który gwarantuje name właściwość. Implementowany przez Node, Entity, oraz kilka typów deskryptorów specyficznych dla formatu.

Geometria i siatka

MethodsMethods
MeshEncja siatki wielokątnej. Przechowuje punkty kontrolne (pozycje wierzchołków jako Vector4), listy ścian wielokątów (listy indeksów punktów kontrolnych) oraz warstwy elementów wierzchołka (normale, UV, kolory wierzchołków).
GeometryAbstrakcyjna baza dla typów geometrii podobnych do siatki. Definiuje tablicę punktów kontrolnych oraz kolekcję VertexElement warstw. Mesh dziedziczy po Geometry.
VertexElementAbstrakcyjna baza dla warstwy danych dołączonej do geometrii (normale, UV, kolory itp.). Przenosi mapping_mode, reference_mode, oraz data listę.
VertexElementNormalPrzechowuje jeden wektor normalny na wierzchołek lub na róg wielokąta, w zależności od mapping_mode. Wartości danych są FVector4 instancjami (pojedyncza precyzja) z w nieużywanymi.
VertexElementUVPrzechowuje dane współrzędnych tekstury jako FVector4 na wierzchołek lub na róg wielokąta (tylko x i y składniki są używane dla UV). Siatka może zawierać wiele warstw UV dla różnych kanałów tekstur.
VertexElementVertexColorPrzechowuje dane koloru RGBA na wierzchołek lub na róg jako FVector4 (r, g, b, a w zakresie 0–1).
VertexElementSmoothingGroupPrzechowuje całkowite identyfikatory grup wygładzania na wielokąt, używane przez importer OBJ do odtworzenia pierwotnych przypisań grup wygładzania z pliku źródłowego.
VertexElementTypeWyliczenie identyfikujące semantyczną rolę warstwy elementu wierzchołka: NORMAL, UV, VERTEX_COLOR, SMOOTHING_GROUP, i inne. Przekaż wartości do Mesh.get_element().
MappingModeWyliczenie kontrolujące, do którego prymitywu mapuje się wartość elementu wierzchołka: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, lub ALL_SAME.
ReferenceModeWyliczenie kontrolujące sposób indeksowania wartości: DIRECT (jedna wartość na prymityw mapowania) lub INDEX_TO_DIRECT (tablica wartości plus osobna tablica indeksów).
PolygonModifierStatyczna klasa narzędziowa z metodami do triangulacji Mesh obiektów i całych Scene grafów.

Transformacje i przestrzeń

MethodsMethods
TransformLokalna transformacja dołączona do Node. Dostarcza translację, rotację (jako Quaternion), oraz komponenty skalowania, plus wygodne właściwości dla kątów Eulera.
GlobalTransformWidok tylko do odczytu transformacji w przestrzeni świata węzła po złożeniu wszystkich transformacji przodków. Dostępny poprzez Node.global_transform.
AssetInfoBlok metadanych dołączony do Scene. Przechowuje nazwę aplikacji autorskiej, nazwę jednostki, współczynnik skali jednostki, definicje osi systemu współrzędnych oraz znaczniki czasu utworzenia/modyfikacji.

Materiały i cieniowanie

MethodsMethods
MaterialAbstrakcyjna klasa bazowa dla wszystkich typów materiałów. Dostarcza nazwę oraz kolekcję właściwości dla parametrów numerycznych i kolorów.
LambertMaterialModel materiału jedynie dyfuzyjnego. Przechowuje kolor otoczenia, kolor dyfuzji, kolor emisji oraz przezroczystość. Ładowany z plików OBJ, które używają podstawowych Ka/Kd/Ke deklaracji.
PhongMaterialMethods LambertMaterial z kolorem odbicia i połyskiem (wykładnik specular). Ładowany z plików OBJ, które używają Ks/Ns deklaracji.
PbrMaterialMateriał oparty na fizycznym renderowaniu (Physically Based Rendering). Przechowuje albedo, współczynnik metaliczności, współczynnik szorstkości oraz powiązane tekstury. Używany przez glTF 2.0 i inne formaty obsługujące PBR.

Kamera i oświetlenie

MethodsMethods
CameraEncja kamery. Tylko projection_type i name są funkcjonalne w tej edycji; wszystkie inne właściwości numeryczne (near_plane, far_plane, field_of_view, aspect_ratio) są jedynie szkieletami zwracającymi wartości domyślne. Dołączona do a Node w celu zdefiniowania transformacji punktu widzenia.
LightJednostka źródła światła. Dziedziczy po Camera jako klasa szkieletowa; Light klasa sama w sobie nie udostępnia dodatkowych właściwości w tej wersji.
LightTypeWyliczenie obsługiwanych kategorii światła: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionTypeWyliczenie trybów projekcji kamery: PERSPECTIVE i ORTHOGRAPHIC.

Narzędzia matematyczne

MethodsMethods
Vector2Wektor 2-składnikowy podwójnej precyzji (x, y). Używany do współrzędnych tekstury UV.
Vector3Wektor 3-składnikowy podwójnej precyzji (x, y, z). Używany do pozycji, kierunków i skali.
Vector4Wektor 4-składnikowy podwójnej precyzji (x, y, z, w). Używane do punktów kontrolnych (pozycje jednorodne) i danych normalnych.
FVector2Wektor zmiennoprzecinkowy pojedynczej precyzji o 2 komponentach. Używany wewnętrznie do kompaktowego przechowywania w tablicach danych elementów wierzchołków.
FVector3Wektor zmiennoprzecinkowy pojedynczej precyzji o 3 komponentach. Pojawia się w tablicach danych elementów wierzchołków dla normalnych i stycznych.
FVector4Wektor zmiennoprzecinkowy pojedynczej precyzji o 4 komponentach. Typ przechowywania VertexElementFVector.data.
QuaternionJednostkowy kwaternion do reprezentacji obrotów (w, x, y, z). Używany przez Transform.rotation.
Matrix44×4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxProstopadłościan ograniczający wyrównany do osi określony przez minimum oraz maximum Vector3 wierzchołki. Używane do zapytań przestrzennych i pomocników odrzucania widoku (frustum culling).

Methods

MethodsMethods
AnimationClipNazwany kontener dla zestawu kanałów animowanych obejmujących jeden zakres odtwarzania. A Scene może zawierać wiele klipów (np. “Walk”, “Run”).
AnimationNodePowiązuje AnimationClip do konkretnego węzła sceny lub właściwości. Działa jako most między danymi klipu a obiektami grafu sceny.
AnimationChannelPojedynczy strumień animowanej właściwości w klipie, skierowany do nazwanej właściwości obiektu (np., Transform.translation.x).
KeyFramePojedyncza próbka czas‑wartość w KeyframeSequence. Przechowuje czas (w sekundach) oraz wartość w tym czasie.
KeyframeSequenceUporządkowana lista KeyFrame obiektów dla jednego kanału skalarnego, wraz z ustawieniami interpolacji i ekstrapolacji.
InterpolationWyliczenie trybów interpolacji pomiędzy klatkami kluczowymi: CONSTANT, LINEAR, BEZIER, B_SPLINE, CARDINAL_SPLINE, TCB_SPLINE.
ExtrapolationTypeWyliczenie zachowań poza pierwszą i ostatnią klatką kluczową: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, OSCILLATE.

Wejście/wyjście formatów

MethodsMethods
Scene.from_file(path)Metoda statyczna. Otwiera plik pod adresem path, wykrywa format na podstawie rozszerzenia i zwraca wypełniony Scene. Zgłasza błąd w przypadku nieznalezienia pliku lub nieobsługiwanego formatu.
Scene.open(path, options=None)Metoda instancyjna. Otwiera plik w istniejącym Scene obiekcie, opcjonalnie używając specyficznego dla formatu LoadOptions podklasie.
Scene.save(path, options=None)Metoda instancyjna. Serializuje scenę do path używając formatu wywnioskowanego z rozszerzenia, opcjonalnie używając specyficznego dla formatu SaveOptions podklasie.
FileFormatRejestr obsługiwanych formatów plików. Zawiera wpisy takie jak FileFormat.WAVEFRONT_OBJ, FileFormat.GLTF, FileFormat.FBX7400ASCII, FileFormat.MICROSOFT_3MF. Warianty specyficzne dla formatu są dostępne poprzez klasy opcji (np., ColladaSaveOptions, GltfSaveOptions).
IOServiceWewnętrzna abstrakcja I/O używana przez importery i eksporterzy formatów. Zazwyczaj nie jest używana bezpośrednio w kodzie aplikacji.
LoadOptionsKlasa bazowa dla wszystkich obiektów opcji ładowania specyficznych dla formatu. Dziedziczona przez ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions, ColladaLoadOptions, ThreeMfLoadOptions.
SaveOptionsKlasa bazowa dla wszystkich obiektów opcji zapisu specyficznych dla formatu. Dziedziczona przez ObjSaveOptions, StlSaveOptions, GltfSaveOptions, FbxSaveOptions, ColladaSaveOptions, ThreeMfSaveOptions.

Format OBJ

MethodsMethods
ObjImporterWewnętrzna klasa importera, która analizuje pliki Wavefront OBJ i MTL. Wywoływana automatycznie przez Scene.from_file() dla .obj rozszerzeń.
ObjLoadOptionsOpcje ładowania dla plików Wavefront OBJ. Kluczowe właściwości: flip_coordinate_system, scale, enable_materials, normalize_normal.
ObjSaveOptionsOpcje zapisu dla wyjścia Wavefront OBJ. Kontroluje wektory normalne, UV, odniesienia do materiałów oraz tryb chmury punktów.
ObjFormatDeskryptor formatu dla Wavefront OBJ. Dostępny jako FileFormat.WAVEFRONT_OBJ().

Format STL

MethodsMethods
StlImporterWewnętrzny importer, który odczytuje zarówno binarne, jak i ASCII pliki STL. Wybierany automatycznie na podstawie rozszerzenia.
StlExporterWewnętrzny eksporter, który zapisuje STL.
StlLoadOptionsOpcje ładowania dla plików STL. Obsługuje flip_coordinate_system i scale.
StlSaveOptionsOpcje zapisu dla wyjścia STL. Kontrolki binary_mode, scale, i flip_coordinate_system.
StlFormatDeskryptor formatu dla STL.

Format glTF

MethodsMethods
GltfLoadOptionsOpcje ładowania dla plików glTF 2.0 i GLB. Kluczowa właściwość: flip_tex_coord_v.
GltfSaveOptionsOpcje zapisu dla wyjścia glTF 2.0. Użyj binary_mode=True do samodzielnego pakietu GLB.
GltfFormatDeskryptor formatu dla glTF 2.0 / GLB. Dostępny jako FileFormat.GLTF2().

Format FBX

MethodsMethods
FbxLoadOptionsOpcje ładowania dla plików FBX. Kluczowe właściwości: keep_builtin_global_settings, compatible_mode.
FbxSaveOptionsOpcje zapisu dla wyjścia FBX. Eksport FBX generuje NotImplementedError bezwarunkowo; FbxSaveOptions istnieje, ale eksport nie jest zaimplementowany.
FbxFormatDeskryptor formatu dla FBX. Dostępny jako FileFormat.FBX7400ASCII().

Format COLLADA

MethodsMethods
ColladaLoadOptionsOpcje ładowania dla COLLADA (.dae) pliki. Kontroluje mapowanie osi i skalę jednostek przy imporcie.
ColladaSaveOptionsOpcje zapisu dla wyjścia COLLADA. Kontroluje indented, flip_coordinate_system, oraz eksport materiałów.
ColladaFormatDeskryptor formatu dla COLLADA. Rozwiązywany automatycznie z .dae rozszerzenia pliku.

3MF Format

MethodsMethods
ThreeMfLoadOptionsOpcje ładowania dla 3MF (.3mf) pliki.
ThreeMfSaveOptionsOpcje zapisu dla wyjścia 3MF. 3MF jest preferowanym formatem dla przepływów pracy druku 3D.
ThreeMfFormatDeskryptor formatu dla 3MF. Dostępny jako FileFormat.MICROSOFT_3MF_FORMAT().

Methods

MethodsMethods
TextureMappingOkreśla, jak tekstura jest mapowana na geometrię: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, itd.
BooleanOperationTyp operacji logicznej CSG: UNION, DIFFERENCE, INTERSECTION.

System właściwości

MethodsMethods
PropertyPojedyncza nazwana typowana własność na A3DObject. Przechowuje nazwę własności, deskryptor typu i bieżącą wartość.
PropertyCollectionIterowalna kolekcja Property obiektów podłączonych do A3DObject. Obsługuje wyszukiwanie po nazwie oraz iterację po wszystkich zdefiniowanych właściwościach.
CustomObjectLekka A3DObject klasa podrzędna, która zawiera tylko nazwę i dowolny PropertyCollection. Używany do przechowywania metadanych definiowanych przez użytkownika na obiektach sceny.

Obraz i renderowanie

MethodsMethods
ImageRenderOptionsOpcje rasteryzacji programowej przy renderowaniu sceny do bufora obrazu. Przechowuje kolor tła, wymiary obrazu oraz odniesienie do kamery. Scene.render() wywołuje NotImplementedError; renderowanie nie jest zaimplementowane w tej wersji.

Zobacz także

 Polski