Kako započeti sa 3D u Pythonu
Preduslovi
- Python 3.8 ili noviji
- pip menadžer paketa
Korak 1 — Instalirajte paket
Instalirajte Aspose.3D FOSS za Python sa PyPI:
pip install aspose-3d-fossProverite instalaciju:
import aspose.threed as a3d
print(a3d.__version__)Korak 2 — Kreirajte svoju prvu 3D scenu
Scene je koreni kontejner za sve 3D objekte. Konstruktor prihvata opcioni entitet, roditeljsku scenu i ime:
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)Korak 3 — Dodajte Mesh u scenu
Mesh predstavlja poligonalnu geometriju.Node priključuje entitete na grafu scene:
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)Korak 4 — Učitaj postojeću 3D datoteku
Scene.open() učitava 3D fajl sa diska ili toka. Prihvata putanju i opcione
parametre učitavanja:
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()))Za otkrivanje formata fajla pre učitavanja:
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())Korak 5 — Sačuvajte izlaz u datoteku
Scene.save() izveze scenu u bilo koji podržani format. Preporučeni pristup je automatsko otkrivanje zasnovano na ekstenziji: Aspose.3D zaključuje format iz ekstenzije fajla (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")Možete takođe proslediti eksplicitni format koristeći fabričke metode FileFormat.WAVEFRONT_OBJ()
ili FileFormat.GLTF2(), ali automatsko otkrivanje ekstenzije je jednostavnije i prenosivije.
Sledeći koraci
- Kako učitati 3D modele u Pythonu — formati, opcije, obilazak grafova scene
- Kako konvertovati 3D modele u Pythonu — radni tokovi grupne konverzije
- Kako izgraditi geometriju mreže u Pythonu — kontrolne tačke, poligoni, normale
- FAQ — česta pitanja i rešavanje problema