Hur du kommer igång med 3D i Python
Förutsättningar
- Python 3.8 eller senare
- pip‑pakethanterare
Steg 1 — Installera paketet
Installera Aspose.3D FOSS för Python från PyPI:
pip install aspose-3d-fossVerifiera installationen:
import aspose.threed as a3d
print(a3d.__version__)Steg 2 — Skapa din första 3D-scen
En Scene är rotbehållaren för alla 3D‑objekt. Konstruktorn accepterar en valfri entitet, förälderscen och namn:
import aspose.threed as a3d
# Create an empty scene (CLM-3d-35d727)
scene = a3d.Scene()
# Access the root node of the scene (CLM-3d-859ac2)
root = scene.root_node()
print("Root node:", root)Steg 3 — Lägg till ett Mesh i scenen
Mesh representerar polygongeometri. Node fäster enheter till scengrafen:
import aspose.threed as a3d
scene = a3d.Scene()
# Create a named mesh (CLM-3d-529c11)
mesh = a3d.Mesh("my_mesh")
# Create a node and attach the mesh (CLM-3d-0edae8)
node = a3d.Node("my_node", mesh)
# Add the node as a child of the root (CLM-3d-a403f5)
scene.root_node().add_child_node(node)Steg 4 — Ladda en befintlig 3D‑fil
Scene.open() laddar en 3D-fil från disk eller ström. Den accepterar en sökväg och valfria
inläsningsalternativ:
import aspose.threed as a3d
# Load an OBJ file (CLM-3d-d84964)
scene = a3d.Scene()
scene.open("model.obj")
# Inspect the loaded scene
root = scene.root_node()
print("Child nodes:", len(root.child_nodes()))För att upptäcka filformatet innan inläsning:
import aspose.threed as a3d
# Detect the format from a file name (CLM-3d-d2de62)
fmt = a3d.FileFormat.detect(None, "model.fbx")
if fmt:
print("Detected format:", fmt.extension())Steg 5 — Spara utdata till en fil
Scene.save() exporterar scenen till vilket som helst stödformat. Den rekommenderade metoden är extensionsbaserad automatisk identifiering: Aspose.3D härleder formatet från filändelsen (CLM-3d-8051bd, CLM-3d-b28d7a, CLM-3d-de8e1a):
import aspose.threed as a3d
scene = a3d.Scene()
# ... populate scene ...
# Save as Wavefront OBJ — extension auto-detects the format
scene.save("output.obj")
# Save as glTF 2.0 binary — .glb extension triggers binary GLB output
scene.save("output.glb")Du kan också ange ett explicit format med fabriksmetoderna FileFormat.WAVEFRONT_OBJ() eller FileFormat.GLTF2(), men automatisk detektering av filändelse är enklare och mer portabel.
Nästa steg
- Hur man laddar 3D-modeller i Python — format, alternativ, traversering av scengraf
- Hur man konverterar 3D-modeller i Python — batchkonverteringsarbetsflöden
- Hur man bygger meshgeometri i Python — kontrollpunkter, polygoner, normaler
- FAQ — vanliga frågor och felsökning