Referencja API dla aspose-3d-foss 26.1.0 (Java 21+, licencja MIT).
Wszystkie klasy znajdują się w com.aspose.threed pakiecie głównym. Import główny to:
Układ pakietów: Prawie wszystkie klasy publiczne znajdują się w com.aspose.threed. Jedynym podpakietem zazwyczaj używanym jest com.aspose.threed.shading (dla PbrMaterial). Pakiet com.aspose.threed.formats podpakiet zawiera wewnętrzne importery/eksporterzy i zazwyczaj nie jest importowany bezpośrednio.
Java konwencja nazewnictwa: Wszystkie właściwości używają metod getter/setter. Na przykład, użyj node.getTransform() zamiast node.transform, oraz transform.setTranslation(...) zamiast transform.translation = .... Należy zauważyć, że Vector3, Vector4, Quaternion, Matrix4, oraz FVector typy używają publiczne pola (v.x, v.y, v.z) zamiast getterów do dostępu do komponentów.
Podstawowy graf sceny
| Enumerations | Enumerations |
|---|
Scene | Kontener najwyższego poziomu dla wszystkich danych sceny 3D. Przechowuje węzeł główny, metadane zasobów i klipy animacji. Udostępnia fromFile(), open(), i save() jako główne punkty wejścia/wyjścia. |
Node | Nazwany węzeł w hierarchii sceny. Posiada listę węzłów potomnych oraz listę dołączonych Entity obiekty takie jak siatki, kamery i światła. Przenosi lokalne Transform. |
Entity | Abstrakcyjna klasa bazowa dla wszystkich obiektów, które mogą być dołączone do Node. Dostarcza nazwę i tożsamość, ale nie posiada własnej geometrii. |
SceneObject | Klasa bazowa współdzielona przez Node i Entity. Dostarcza interfejs kolekcji właściwości używany do metadanych definiowanych przez użytkownika. |
A3DObject | Podstawowa klasa bazowa dla wszystkich zarządzanych obiektów Aspose.3D. Udostępnia właściwość nazwy oraz Properties kolekcję. |
INamedObject | Interfejs, który gwarantuje a getName() metodę. Implementowany przez Node, Entity, oraz kilka typów deskryptorów specyficznych dla formatu. |
Geometria i siatka
| Enumerations | Enumerations |
|---|
Mesh | Encja 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). |
Geometry | Abstrakcyjna baza dla typów geometrii podobnych do siatek. Definiuje tablicę punktów kontrolnych oraz kolekcję VertexElement warstw. Mesh dziedziczy po Geometry. |
VertexElement | Abstrakcyjna baza dla warstwy danych dołączonej do geometrii (normale, UV, kolory, itp.). Przenosi getMappingMode(), getReferenceMode(), oraz listę danych. |
VertexElementNormal | Przechowuje jeden wektor normalny na wierzchołek lub na róg wielokąta, w zależności od trybu mapowania. Wartości danych są Vector4 instancje z w nieużywane. |
VertexElementUV | Przechowuje pary współrzędnych tekstury (Vector2) na wierzchołek lub na róg wielokąta. Siatka może zawierać wiele warstw UV dla różnych kanałów tekstury. |
VertexElementVertexColor | Przechowuje dane koloru RGBA na wierzchołek lub na róg jako Vector4 (r, g, b, a w zakresie 0–1). |
VertexElementType | Wyliczenie identyfikujące semantyczną rolę warstwy elementu wierzchołka: NORMAL, UV, VERTEX_COLOR, i inne. Przekaż wartości do Mesh.getElement(). |
MappingMode | Wyliczenie kontrolujące, do którego prymitywu mapuje się wartość elementu wierzchołka: CONTROL_POINT, POLYGON_VERTEX, lub POLYGON. |
ReferenceMode | Wyliczenie 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). |
Transformacje i przestrzeń
| Enumerations | Enumerations |
|---|
Transform | Lokalna transformacja dołączona do Node. Dostarcza translację, rotację (jako Quaternion), oraz komponenty skalowania, plus wygodne metody dla kątów Eulera. |
GlobalTransform | Widok tylko do odczytu transformacji w przestrzeni świata węzła po złożeniu wszystkich transformacji przodków. Dostępny poprzez node.getGlobalTransform(). |
AssetInfo | Blok 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
| Enumerations | Enumerations |
|---|
Material | Abstrakcyjna klasa bazowa dla wszystkich typów materiałów. Dostarcza nazwę oraz kolekcję właściwości dla parametrów numerycznych i kolorów. |
PbrMaterial | Materiał renderingu opartego na fizyce (Physically Based Rendering). Przechowuje albedo, współczynnik metaliczności, współczynnik szorstkości, kolor emisji, przezroczystość oraz powiązane tekstury. Używany przez glTF 2.0 i inne formaty obsługujące PBR. Import: com.aspose.threed.shading.PbrMaterial. |
Enumerations
| Enumerations | Enumerations |
|---|
Camera | Encja kamery. Dziedziczy po Entity. Żadne właściwości specyficzne dla formatu nie są udostępniane w edycji Java FOSS poza odziedziczoną nazwą i kolekcją właściwości. Dołączone do a Node w celu zdefiniowania transformacji punktu widzenia. |
Uwaga: Enumerations Light klasa nie jest dostępna w edycji Java Aspose.3D FOSS. Dane oświetlenia sceny z importowanych plików są przechowywane jako ogólne Entity obiekty.
Narzędzia matematyczne
| Enumerations | Enumerations |
|---|
Vector2 | Wektor 2-składnikowy podwójnej precyzji (x, y). Używany do współrzędnych tekstury UV. |
Vector3 | Wektor 3-składnikowy podwójnej precyzji (x, y, z). Używany do pozycji, kierunków i skali. |
Vector4 | Wektor 4-składnikowy podwójnej precyzji (x, y, z, w). Używany do punktów kontrolnych (pozycje jednorodne) i danych normalnych. |
FVector3 | Jednowymiarowy wektor float o precyzji pojedynczej i 3 komponentach. Pojawia się w tablicach danych elementów wierzchołków dla normalnych i stycznych. |
FVector4 | Jednowymiarowy wektor float o precyzji pojedynczej i 4 komponentach. Typ przechowywania VertexElementFVector danych. |
Quaternion | Jednostkowy kwaternion do reprezentacji obrotów (w, x, y, z). Używany przez Transform.getRotation(). |
Matrix4 | 4x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions. |
BoundingBox | Axis-aligned bounding box zdefiniowany przez getMinimum() oraz getMaximum() Vector3 wierzchołki. Używany do zapytań przestrzennych i pomocników przy frustum culling. |
Enumerations
| Enumerations | Enumerations |
|---|
AnimationClip | Nazwany kontener dla zakresu animacji. A Scene może zawierać wiele klipów (np. “Walk”, “Run”). Szkic deklaracji — dane klatek kluczowych i odtwarzanie nie są jeszcze zaimplementowane. |
Wejście/wyjście formatów
| Enumerations | Enumerations |
|---|
Scene.fromFile(path) | Metoda statyczna. Otwiera plik pod adresem path, wykrywa format na podstawie rozszerzenia i zwraca wypełniony Scene. Rzuca wyjątek, gdy plik nie zostanie znaleziony lub format jest nieobsługiwany. |
Scene.open(path, options) | Metoda instancyjna. Otwiera plik w istniejącym Scene obiekcie, opcjonalnie używając specyficznego dla formatu LoadOptions podklasy. |
Scene.save(path, options) | Metoda instancyjna. Serializuje scenę do path używając formatu wywnioskowanego z rozszerzenia, opcjonalnie używając specyficznego dla formatu SaveOptions podklasy. |
FileFormat | Rejestr obsługiwanych formatów plików. Zawiera wpisy takie jak FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII(). |
IOService | Wewnętrzna abstrakcja I/O używana przez importery i eksporterzy formatów. Zazwyczaj nie jest używana bezpośrednio w kodzie aplikacji. |
LoadOptions | Klasa bazowa dla wszystkich obiektów opcji ładowania specyficznych dla formatu. Rozszerzana przez ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions. |
SaveOptions | Klasa bazowa dla wszystkich obiektów opcji zapisu specyficznych dla formatu. Rozszerzana przez ObjSaveOptions, StlSaveOptions, GltfSaveOptions. |
Format OBJ
| Enumerations | Enumerations |
|---|
ObjImporter | Wewnętrzna klasa importera, która parsuje pliki Wavefront OBJ i MTL. Wywoływana automatycznie przez Scene.fromFile() dla .obj rozszerzenia. |
ObjLoadOptions | Opcje ładowania dla plików Wavefront OBJ. Kluczowe właściwości: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal(). |
ObjSaveOptions | Opcje zapisu dla wyjścia Wavefront OBJ. Kontroluje wektory normalne, UV, odniesienia do materiałów oraz tryb chmury punktów. |
ObjFormat | Deskryptor formatu dla Wavefront OBJ. Dostępny jako FileFormat.WAVEFRONT_OBJ(). |
Format STL
| Enumerations | Enumerations |
|---|
StlImporter | Wewnętrzny importer, który odczytuje zarówno binarne, jak i ASCII pliki STL. Wybierany automatycznie na podstawie rozszerzenia. |
StlExporter | Wewnętrzny eksporter zapisujący pliki STL. |
StlLoadOptions | Opcje ładowania dla plików STL. Obsługuje setFlipCoordinateSystem(), setRecalculateNormal(), oraz setContentType(). |
StlSaveOptions | Opcje zapisu dla wyjścia STL. Kontroluje setFlipCoordinateSystem(), setAxisSystem(), oraz setContentType(). |
StlFormat | Deskryptor formatu dla STL. |
Format glTF
| Enumerations | Enumerations |
|---|
GltfLoadOptions | Opcje ładowania dla plików glTF 2.0 i GLB. Kluczowe właściwości: setFlipCoordinateSystem(), setPrettyPrint(). |
GltfSaveOptions | Opcje zapisu dla wyjścia glTF 2.0 i GLB. Użyj setContentType(FileContentType.BINARY) aby wygenerować samodzielny .glb pakiet. |
GltfFormat | Deskryptor formatu dla glTF 2.0 / GLB. Dostępny jako FileFormat.GLTF2(). |
Format FBX
FBX jest obsługiwany dla tylko import. Eksport do FBX nie jest dostępny w edycji Java FOSS.
| Enumerations | Enumerations |
|---|
FbxLoadOptions | Opcje ładowania plików FBX. Kluczowa właściwość: setFlipCoordinateSystem(). |
FbxFormat | Deskryptor formatu dla FBX. Dostępny jako FileFormat.FBX7400ASCII(). |
Enumerations
| Enumerations | Enumerations |
|---|
Axis | Identyfikuje oś współrzędnych: X_AXIS, Y_AXIS, Z_AXIS. Używane w opcjach przemapowywania układu współrzędnych. |
CoordinateSystem | Określa konwencję praworęczności: RIGHT_HANDED lub LEFT_HANDED. |
TextureMapping | Określa, jak tekstura jest mapowana na geometrię: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, itp. |
BooleanOperation | Typ operacji logicznej CSG: UNION, DIFFERENCE, INTERSECTION. |
System właściwości
| Enumerations | Enumerations |
|---|
Property | Pojedyncza nazwana typowana właściwość w A3DObject. Przechowuje nazwę właściwości, deskryptor typu i bieżącą wartość. |
PropertyCollection | Iterowalna kolekcja Property obiekty dołączone do A3DObject. Obsługuje wyszukiwanie po nazwie oraz iterację po wszystkich zdefiniowanych właściwościach. |
CustomObject | Lekka A3DObject klasa podrzędna, która zawiera tylko nazwę i dowolny PropertyCollection. Używana do przechowywania metadanych definiowanych przez użytkownika na obiektach sceny. |
Obraz i renderowanie
| Enumerations | Enumerations |
|---|
ImageRenderOptions | Opcje rasteryzacji programowej podczas renderowania sceny do bufora obrazu. Przechowuje kolor tła, wymiary obrazu oraz odniesienie do kamery. Ta funkcja jest dostępna w obsługiwanych konfiguracjach. |
Zobacz także