Introduksjon
Vi lanserer Aspose.3D FOSS for Python, et rent-Python bibliotek for lesing, skriving og konvertering av vanlige 3D‑filformater. Biblioteket er publisert på PyPI som aspose-3d-foss, har en MIT‑lisens, og har ingen eksterne avhengigheter.
Hvis du noen gang har trengt å inspisere eller konvertere 3D‑filer programmatisk (ekstrahere antall mesh‑vertexer, pipe OBJ‑geometri inn i et behandlingsskript, eller batch‑konvertere STL‑filer til glTF for en nettleser‑viser), er dette biblioteket bygget for dette bruksområdet. Det krever ingen grafikkdriver, ingen native‑utvidelsesmodul, eller noen sky‑tilkobling.
Hva som er inkludert
Kjerne‑scene‑graf
Hver fil lastes inn i en Scene objekt som speiler den opprinnelige filens nodehierarki. Noder inneholder Transform (oversettelse, rotasjon, skalering) og en eller flere tilknyttede enheter som Mesh, Camera, eller Light. Scene‑grafen er den samme uavhengig av kildeformat, så kode skrevet for å traversere og behandle geometri fungerer på tvers av alle støttede formater uten endringer.
Geometri‑tilgang
Mesh objekter eksponerer:
control_points: liste over vertex‑posisjoner somVector4(x, y, z, w)polygons: liste over face index‑lister (arbitrary polygon arity, not just triangles)get_element(VertexElementType): henter navngitte vertex‑datalag for normals, UVs, vertex colours, og smoothing groups
Materialer
LambertMaterial og PhongMaterial bærer materialegenskapene lest fra OBJ .mtl filer (ambient, diffuse, specular, emissive, transparency, shininess). Materialer overlever last–save-rundtur for formater som støtter dem.
Matematikkverktøy
Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4, og BoundingBox er inkludert som lette verdityper for geometriberegninger.
Animasjon
Den AnimationClip, AnimationNode, KeyframeSequence, og KeyFrame klasser gir tilgang til keyframe-animasjonsdata fra formater som inneholder dem, som glTF og COLLADA.
Rask start
pip install aspose-3d-foss
Last inn en 3D‑fil og skriv ut vertex‑antallet for hver 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)
Konverter den samme filen til glTF:
from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())
Det er hele programmet. Ingen konfigurasjonsfiler, ingen API‑nøkler, ingen nettverkskall.
Støttede formater
| Format | Extension(s) | Last inn | Lagre | Notater |
|---|---|---|---|---|
| Wavefront OBJ | .obj | Ja | Ja | .mtl støtte for lasting av materialer |
| STL | .stl | Ja | Ja | Binær og ASCII; alternativ for å snu koordinatsystemet |
| glTF 2.0 | .gltf, .glb | Ja | Ja | GLB (selvstendig binær) støttet |
| COLLADA | .dae | Ja | Ja | ColladaSaveOptions tilgjengelig med flip_coordinate_system, enable_materials, indented |
| 3MF | .3mf | Ja | Ja | Egnet for 3D‑utskriftsarbeidsflyter |
| FBX | .fbx | Delvis | N/A | Kun tokeniserer; full parser under utvikling |
Formatgjenkjenning er automatisk fra filendelsen. Formatspesifikke last‑ og lagre‑alternativer (ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions) er tilgjengelige for finjustert kontroll.
Åpen kilde og gratis
Biblioteket er lisensiert under MIT. Du kan bruke det i kommersielle applikasjoner, endre det og redistribuere det uten restriksjoner. Kildekoden er tilgjengelig på GitHub under Aspose-organisasjonen.
Det finnes ingen bruksnivåer, ingen token‑begrensninger og ingen telemetri. Biblioteket utfører all behandling lokalt.
Avhengigheter: ingen. Pakken installeres som et rent-Python wheel uten C‑utvidelser og uten tredjeparts‑kjøretidskrav.
Kom i gang
- Installer:
pip install aspose-3d-foss - Hvordan: Laste inn filer: Hvordan laste inn 3D‑modeller i Python
- Hvordan: Konvertere filer: Hvordan konvertere 3D‑modeller i Python
- API‑referanse: Aspose.3D FOSS for Python API‑referanse
- PyPI: aspose-3d-foss på PyPI
Konklusjon
Aspose.3D FOSS for Python 26.1.0 dekker de mest vanlige 3D‑filformatene som brukes i verktøy, pipelines og webapplikasjoner (OBJ, STL, glTF, COLLADA og 3MF) med et konsistent Python API og uten installasjonsfriksjon. Hvis du støter på en feil, et ikke‑støttet kanttilfelle eller et format du ønsker lagt til, vennligst åpne en sak på GitHub. Vi vedlikeholder aktivt biblioteket og ønsker bidrag velkommen.