2012-10-03 11 views
12

Voglio disegnare primitive 3D come sfere, cilindri e piani (patch) in una trama 3D e mi piacerebbe essere in grado di ruotare in modo interattivo, tradurre e zoomare la scena. Voglio farlo in Python. Sono abituato a usare Matplotlib per i grafici 2D, ma non ho mai lavorato con la grafica 3D con Python.C'è un modo per disegnare le primitive in 3D con Python?

Qualche suggerimento? Qualsiasi link alle esercitazioni? Qualche idea?

+0

Tramite alcuni collegamenti OpenGL per Python, forse? – Bart

+0

Sì, ho pensato a OpenGL ma credevo che fosse "di base" (cioè avrei dovuto partire da terra per definire lo spettatore) e volevo qualcosa di più evoluto. Ad esempio disegnare una patch in una trama 3D _a la Matlab_ sarebbe un modo più semplice ... Ma non lo so. Forse non esiste per Python? –

+0

Perché non usare [mplot3d] (http://matplotlib.org/mpl_toolkits/mplot3d/tutorial.html) incluso in matplotlib? – Dhara

risposta

8

Se sei abituato a matplotlib, allora mplot3d è probabilmente una buona opzione se soddisfa i tuoi requisiti.

In alternativa c'è VPython. Ciò ti consente una maggiore libertà di creare oggetti arbitrari e manipolarli, ma, ovviamente, più da imparare.

+0

Vorrei anche ricordare che il frullatore può essere controllato da grigi –