Come iniziare con il 3D in Python
Prerequisiti
- Python 3.8 o versioni successive
- gestore di pacchetti pip
Passo 1 — Installa il pacchetto
Installa Aspose.3D FOSS per Python da PyPI:
pip install aspose-3d-fossVerifica l’installazione:
import aspose.threed as a3d
print(a3d.__version__)Passo 2 — Crea la tua prima scena 3D
Un Scene è il contenitore radice per tutti gli oggetti 3D. Il costruttore accetta un’entità opzionale, la scena genitore e il nome:
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)Passo 3 — Aggiungi una Mesh alla Scena
Mesh rappresenta la geometria del poligono. Node collega le entità al grafo della scena:
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)Passo 4 — Carica un file 3D esistente
Scene.open() carica un file 3D dal disco o dallo stream. Accetta un percorso e opzioni di caricamento opzionali:
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()))Per rilevare il formato del file prima del caricamento:
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())Passo 5 — Salva l’output su un file
Scene.save() esporta la scena in qualsiasi formato supportato. L’approccio consigliato è il rilevamento automatico basato sull’estensione: Aspose.3D deduce il formato dall’estensione del file (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")Puoi anche passare un formato esplicito usando i metodi factory FileFormat.WAVEFRONT_OBJ() o FileFormat.GLTF2(), ma il rilevamento automatico dell’estensione è più semplice e più portabile.
Passi successivi
- Come caricare modelli 3D in Python — formati, opzioni, attraversamento del grafo della scena
- Come convertire modelli 3D in Python — flussi di lavoro per conversioni batch
- Come costruire geometria mesh in Python — punti di controllo, poligoni, normali
- FAQ — domande comuni e risoluzione dei problemi