Úvod
Vydáváme Aspose.3D FOSS pro Python, čistá-Python knihovna pro čtení, zápis a konverzi běžných 3D formátů souborů. Knihovna je publikována na PyPI jako aspose-3d-foss, má licenci MIT a nemá žádné externí závislosti.
Pokud jste někdy potřebovali programově prohlížet nebo konvertovat 3D soubory (například získat počet vrcholů sítě, předat geometrii OBJ do zpracovatelského skriptu nebo hromadně převést soubory STL na glTF pro webový prohlížeč), tato knihovna je pro takový případ vytvořena. Nevyžaduje grafický ovladač, nativní rozšiřující modul ani žádné cloudové připojení.
Co je zahrnuto
Jádrový graf scény
Každý soubor je načten do Scene objektu, který odráží hierarchii uzlů původního souboru. Uzly nesou Transform (překlad, rotaci, měřítko) a jeden nebo více připojených entit, jako jsou Mesh, Camera, nebo Light. Scénový graf je stejný bez ohledu na zdrojový formát, takže kód napsaný pro procházení a zpracování geometrie funguje napříč všemi podporovanými formáty bez úprav.
Přístup k geometrii
Mesh objekty poskytují:
control_points: seznam pozic vrcholů jakoVector4(x, y, z, w)polygons: seznam seznamů indexů ploch (libovolná arita polygonů, nejen trojúhelníky)get_element(VertexElementType): získává pojmenované vrstvy dat vrcholů pro normály, UV, barvy vrcholů a skupiny vyhlazování
Materiály
LambertMaterial a PhongMaterial nesou materiálové vlastnosti načtené z OBJ .mtl soubory (ambient, diffuse, specular, emissive, transparency, shininess). Materiály přežijí načítání‑ukládání v cyklu pro formáty, které je podporují.
Math Utilities
Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4, a BoundingBox jsou zahrnuty jako lehké hodnotové typy pro geometrické výpočty.
Animation
The AnimationClip, AnimationNode, KeyframeSequence, a KeyFrame třídy poskytují přístup k datům animace klíčových snímků z formátů, které je obsahují, jako jsou glTF a COLLADA.
Quick Start
pip install aspose-3d-foss
Načtěte 3D soubor a vytiskněte počet vrcholů každé sítě:
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)
Convert the same file to glTF:
from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())
To je kompletní program. Žádné konfigurační soubory, žádné API klíče, žádné síťové volání.
Podporované formáty
| Formát | Extension(s) | Načíst | Uložit | Poznámky |
|---|---|---|---|---|
| Wavefront OBJ | .obj | Ano | Ano | .mtl podpora načítání materiálů |
| STL | .stl | Ano | Ano | Binární a ASCII; možnost převrácení souřadnicového systému |
| glTF 2.0 | .gltf, .glb | Ano | Ano | GLB (samostatný binární soubor) podporováno |
| COLLADA | .dae | Ano | Ano | ColladaSaveOptions k dispozici s flip_coordinate_system, enable_materials, indented |
| 3MF | .3mf | Ano | Ano | Vhodné pro workflow 3D tisku |
| FBX | .fbx | Částečné | N/A | Pouze tokenizér; kompletní parser je ve vývoji |
Detekce formátu je automatická na základě přípony souboru. Formátově specifické možnosti načítání a ukládání (ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions) jsou k dispozici pro jemné řízení.
Open source a zdarma
Knihovna je licencována pod MIT. Můžete ji používat v komerčních aplikacích, upravovat ji a redistribuovat bez omezení. Zdrojový kód je dostupný na GitHubu pod organizací Aspose.
Neexistují žádné úrovně používání, žádná omezení tokenů ani telemetrie. Knihovna provádí veškeré zpracování lokálně.
Závislosti: žádné. Balíček se instaluje jako čisté Python wheel bez C rozšíření a bez požadavků na třetí strany během běhu.
Začínáme
- Instalace:
pip install aspose-3d-foss - Návod: Načítání souborů: Jak načíst 3D modely v Python
- Návod: Převod souborů: Jak převést 3D modely v Python
- Reference API: Aspose.3D FOSS pro Python API Reference
- PyPI: aspose-3d-foss na PyPI
Závěr
Aspose.3D FOSS pro Python 26.1.0 pokrývá nejčastější 3D formáty souborů používané v nástrojích, pipelinech a webových aplikacích (OBJ, STL, glTF, COLLADA a 3MF) s konzistentním Python API a bez instalačních překážek. Pokud narazíte na chybu, nepodporovaný okrajový případ nebo formát, který potřebujete přidat, otevřete prosím issue na GitHubu. Aktivně udržujeme knihovnu a vítáme příspěvky.