Cum să începeți cu 3D în Python
Precondiții
- Python 3.8 sau o versiune ulterioară
- manager de pachete pip
Pasul 1 — Instalați pachetul
Instalați Aspose.3D FOSS pentru Python de pe PyPI:
pip install aspose-3d-fossVerificați instalarea:
import aspose.threed as a3d
print(a3d.__version__)Pasul 2 — Creați prima scenă 3D
Un Scene este containerul rădăcină pentru toate obiectele 3D. Constructorul acceptă o entitate opțională, scena părinte și un nume:
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)Pasul 3 — Adaugă un Mesh în scenă
Mesh reprezintă geometria poligonului. Node atașează entitățile la graficul scenei:
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)Pasul 4 — Încarcă un fișier 3D existent
Scene.open() încarcă un fișier 3D de pe disc sau din flux. Acceptă o cale și opțiuni de încărcare opționale:
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()))Pentru a detecta formatul fișierului înainte de încărcare:
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())Pasul 5 — Salvează ieșirea într-un fișier
Scene.save() exportă scena în orice format acceptat. Abordarea recomandată este detectarea automată bazată pe extensie: Aspose.3D deduce formatul din extensia fișierului (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")De asemenea, puteți transmite un format explicit utilizând metodele de fabrică FileFormat.WAVEFRONT_OBJ()
sau FileFormat.GLTF2(), dar detectarea automată a extensiei este mai simplă și mai portabilă.
Următorii pași
- Cum să încărcați modele 3D în Python — formate, opțiuni, traversarea graficului de scenă
- Cum să convertiți modele 3D în Python — fluxuri de lucru pentru conversie în lot
- Cum să construiți geometria de plasă în Python — puncte de control, poligoane, normale
- Întrebări frecvente — întrebări comune și depanare