Przypadki użycia
Przegląd
Aspose.3D jest otwartoźródłową biblioteką formatu plików 3D dla Pythona, która umożliwia programistom tworzenie, manipulowanie i konwertowanie scen oraz modeli 3D programowo. Obsługuje nowoczesne przepływy pracy 3D, zapewniając solidny file I/O i obsługę grafu sceny.
Biblioteka oferuje pełne wsparcie dla glTF (GL Transmission Format) z obsługą materiałów PBR, co czyni ją odpowiednią dla pipeline’ów renderowania w sieci i w czasie rzeczywistym. Jej hierarchiczna struktura węzłów umożliwia intuicyjną organizację scen 3D przy użyciu relacji rodzic‑dziecko między węzłami, umożliwiając skalowalne zarządzanie sceną dla złożonych modeli.
Jak to działa
Aspose.3D for Python zapewnia programistyczną kontrolę nad scenami i modelami 3D poprzez ustrukturyzowany model obiektowy skoncentrowany na Scene, Node i Entity. Programiści mogą wczytywać istniejące formaty, takie jak STL (szeroko stosowany w druku 3D), lub tworzyć sceny od podstaw, używając podstawowych prymitywów, takich jak Mesh. Biblioteka obsługuje zarządzanie siatkami i encjami, umożliwiając inspekcję i modyfikację danych wierzchołków, topologii wielokątów oraz relacji przestrzennych w hierarchii sceny.
from aspose.threed import Scene
from aspose.threed.entities import Mesh
# Create a Mesh instance
mesh = Mesh()
# Access mesh data (control_points and edges are properties, not method calls)
vertices = mesh.control_points
edges = mesh.edgesPrzykład kodu
Ten przykład demonstruje ładowanie modelu 3D z pliku OBJ z opcjami ładowania, a następnie przeglądanie jego grafu sceny w celu sprawdzenia geometrii siatki. Scene.from_file() akceptuje tylko ścieżkę do pliku; użyj scene.open(), aby przekazać opcje ładowania.
from aspose.threed import Scene
from aspose.threed.entities import Mesh
from aspose.threed.formats import ObjLoadOptions
# Import an OBJ file with load options
# Note: Scene.from_file() takes only a file path argument.
# To pass options, use scene.open() instead.
options = ObjLoadOptions()
options.enable_materials = True
options.flip_coordinate_system = False
scene = Scene()
scene.open("model.obj", options)
# Access imported data
for node in scene.root_node.child_nodes:
if node.entity and isinstance(node.entity, Mesh):
mesh = node.entity
print(f"Mesh: {node.name}")
print(f" Vertices: {len(mesh.control_points)}")
print(f" Polygons: {mesh.polygon_count}")Zobacz także
Aspose.3D umożliwia solidny rozwój w Pythonie 3D dla narzędzi wizualizacyjnych i aplikacji interaktywnych. Programiści mogą tworzyć i manipulować scenami 3D, importować pliki OBJ z ładowaniem materiałów za pomocą ObjLoadOptions.enable_materials, eksportować pliki OBJ przy użyciu ObjExporter oraz wykonywać niskopoziomowe obliczenia wektorowe przy użyciu wbudowanych typów, takich jak Vector4 i Matrix4.