Wprowadzenie
Wydajemy Aspose.3D FOSS dla Python, czystą biblioteką Python do odczytu, zapisu i konwersji popularnych formatów plików 3D. Biblioteka jest publikowana w PyPI jako aspose-3d-foss, posiada licencję MIT i nie ma żadnych zewnętrznych zależności.
Jeśli kiedykolwiek potrzebowałeś programowo przeglądać lub konwertować pliki 3D (wyodrębnić liczbę wierzchołków siatki, przekazać geometrię OBJ do skryptu przetwarzającego lub masowo konwertować pliki STL na glTF dla przeglądarki internetowej), ta biblioteka została stworzona właśnie do takiego zastosowania. Nie wymaga sterownika graficznego, natywnego modułu rozszerzeń ani żadnego połączenia z chmurą.
Co zawiera
Podstawowy graf sceny
Każdy plik jest ładowany do Scene obiektu, który odzwierciedla hierarchię węzłów oryginalnego pliku. Węzły zawierają Transform (przesunięcie, rotację, skalę) oraz jedną lub więcej podłączonych jednostek, takich jak Mesh, Camera, lub Light. Graf sceny jest taki sam niezależnie od formatu źródłowego, więc kod napisany do przeglądania i przetwarzania geometrii działa we wszystkich obsługiwanych formatach bez modyfikacji.
Dostęp do geometrii
Mesh obiekty udostępniają:
control_points: lista pozycji wierzchołków jakoVector4(x, y, z, w)polygons: lista list indeksów twarzy (dowolna liczba wierzchołków wielokąta, nie tylko trójkąty)get_element(VertexElementType): pobiera nazwane warstwy danych wierzchołków dla normalnych, UV, kolorów wierzchołków i grup wygładzania
Materiały
LambertMaterial i PhongMaterial zawierają właściwości materiału odczytane z OBJ .mtl pliki (ambient, diffuse, specular, emissive, transparency, shininess). Materiały przetrwają cykl wczytania‑zapisania dla formatów, które je obsługują.
Narzędzia matematyczne
Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4, i BoundingBox są włączone jako lekkie typy wartości do obliczeń geometrycznych.
Animacja
Te AnimationClip, AnimationNode, KeyframeSequence, i KeyFrame klasy zapewniają dostęp do danych animacji klatek kluczowych z formatów, które je zawierają, takich jak glTF i COLLADA.
Szybki start
pip install aspose-3d-foss
Wczytaj plik 3D i wypisz liczbę wierzchołków każdego mesh:
from aspose.threed import Scene
from aspose.threed.entities import Mesh
scene = Scene.from_file("model.obj")
def visit(node):
for entity in node.entities:
if isinstance(entity, Mesh):
print(f"{node.name}: {len(entity.control_points)} vertices, "
f"{len(entity.polygons)} polygons")
for child in node.child_nodes:
visit(child)
visit(scene.root_node)
Konwertuj ten sam plik do glTF:
from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())
To jest kompletny program. Brak plików konfiguracyjnych, kluczy API, wywołań sieciowych.
Obsługiwane formaty
| Format | Extension(s) | Załaduj | Zapisz | Notatki |
|---|---|---|---|---|
| Wavefront OBJ | .obj | Tak | Tak | .mtl obsługa ładowania materiałów |
| STL | .stl | Tak | Tak | Binarny i ASCII; opcja odwrócenia układu współrzędnych |
| glTF 2.0 | .gltf, .glb | Tak | Tak | Obsługiwany GLB (samodzielny plik binarny) |
| COLLADA | .dae | Tak | Tak | ColladaSaveOptions dostępny z flip_coordinate_system, enable_materials, indented |
| 3MF | .3mf | Tak | Tak | Odpowiedni dla procesów druku 3D |
| FBX | .fbx | Częściowy | N/A | Tylko tokenizator; pełny parser w trakcie |
Wykrywanie formatu jest automatyczne na podstawie rozszerzenia pliku. Opcje ładowania i zapisywania specyficzne dla formatu (ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions) są dostępne dla precyzyjnej kontroli.
Open Source i darmowa
Biblioteka jest licencjonowana na licencji MIT. Możesz używać jej w aplikacjach komercyjnych, modyfikować i rozpowszechniać bez ograniczeń. Źródło jest dostępne na GitHubie w organizacji Aspose.
Nie ma poziomów użytkowania, limitów tokenów ani telemetrii. Biblioteka wykonuje wszystkie przetwarzania lokalnie.
Zależności: brak. Pakiet instalowany jest jako czysty Python wheel bez rozszerzeń C i bez zależności runtime innych firm.
Rozpoczęcie pracy
- Instalacja:
pip install aspose-3d-foss - Jak: Ładowanie plików: Jak ładować modele 3D w Python
- Jak: Konwertowanie plików: Jak konwertować modele 3D w Python
- Referencja API: Aspose.3D FOSS dla Python Referencja API
- PyPI: aspose-3d-foss w PyPI
Podsumowanie
Aspose.3D FOSS for Python 26.1.0 obejmuje najpopularniejsze formaty plików 3D używane w narzędziach, pipeline’ach i aplikacjach internetowych (OBJ, STL, glTF, COLLADA i 3MF) z konsekwentnym API Python i bez problemów z instalacją. Jeśli napotkasz błąd, nieobsługiwany przypadek brzegowy lub format, który trzeba dodać, otwórz zgłoszenie na GitHubie. Aktywnie utrzymujemy bibliotekę i zachęcamy do wkładu.