Casi d'uso

Panoramica

Aspose.3D è una libreria open-source per formati di file 3D per Python che consente agli sviluppatori di creare, manipolare e convertire scene e modelli 3D in modo programmatico. Supporta i flussi di lavoro 3D moderni fornendo una gestione robusta dell’I/O dei file e del grafo della scena.

La libreria offre pieno supporto per glTF (GL Transmission Format) con supporto ai materiali PBR, rendendola adatta per pipeline di rendering web e in tempo reale. La sua struttura gerarchica dei nodi consente un’organizzazione intuitiva delle scene 3D usando relazioni genitore‑figlio tra i nodi, permettendo una gestione scalabile delle scene per modelli complessi.

Come funziona

Aspose.3D per Python offre il controllo programmatico su scene e modelli 3D attraverso un modello di oggetti strutturato incentrato su Scene, Node e Entity. Gli sviluppatori possono caricare formati esistenti come STL (ampiamente usato per la stampa 3D) o costruire scene da zero utilizzando primitive di base come Mesh. La libreria supporta la gestione di mesh e entità, consentendo l’ispezione e la modifica dei dati dei vertici, della topologia dei poligoni e delle relazioni spaziali all’interno della gerarchia della scena.

from aspose.threed import Scene
from aspose.threed.entities import Mesh

# Create a Mesh instance
mesh = Mesh()

# Access mesh data (control_points and edges are properties, not method calls)
vertices = mesh.control_points
edges = mesh.edges

Esempio di codice

Questo esempio dimostra il caricamento di un modello 3D da un file OBJ con opzioni di caricamento, quindi l’attraversamento del suo grafo della scena per ispezionare la geometria della mesh. Scene.from_file() accetta solo un percorso file; usa scene.open() per passare le opzioni di caricamento.

from aspose.threed import Scene
from aspose.threed.entities import Mesh
from aspose.threed.formats import ObjLoadOptions

# Import an OBJ file with load options
# Note: Scene.from_file() takes only a file path argument.
# To pass options, use scene.open() instead.
options = ObjLoadOptions()
options.enable_materials = True
options.flip_coordinate_system = False

scene = Scene()
scene.open("model.obj", options)

# Access imported data
for node in scene.root_node.child_nodes:
    if node.entity and isinstance(node.entity, Mesh):
        mesh = node.entity
        print(f"Mesh: {node.name}")
        print(f"  Vertices: {len(mesh.control_points)}")
        print(f"  Polygons: {mesh.polygon_count}")

Vedi anche

Aspose.3D consente uno sviluppo Python 3D robusto per strumenti di visualizzazione e applicazioni interattive. Gli sviluppatori possono creare e manipolare scene 3D, importare file OBJ con caricamento dei materiali tramite ObjLoadOptions.enable_materials, esportare file OBJ usando ObjExporter e eseguire operazioni matematiche vettoriali a basso livello usando tipi integrati come Vector4 e Matrix4.

 Italiano