2013-08-02 10 views
17

Sto cercando una grafica 3D compatibile con Python. Principalmente mi piacerebbe essere in grado di disegnare linee e visualizzarle in 3D. Non ho letteralmente esperienza in questo settore e sto cercando conoscenze ed esercitazioni.python Visualizzazione e grafica 3D

Imparo a programmare meglio con la sperimentazione. Quindi, di quali pacchetti ho bisogno per fare grafica 3D? Mi piace davvero usare emacs, quindi se hai questi suggerimenti, sarebbe fantastico!

In sintesi:

  1. Quali pacchetti ho bisogno per la grafica 3D in pitone.
  2. Nota che io uso Ubuntu 12.04 LTS e emacs 24.3

risposta

12

Il modo più comune per integrare la grafica 3D in realtime sta usando la libreria OpenGL. OpenGL e la grafica in tempo reale sono un grande argomento, ma concentrarsi su qualcosa come disegnare linee 3D non dovrebbe essere troppo difficile. Associazioni esistono per Python http://pyopengl.sourceforge.net/

GLUT - è probabilmente la migliore per la fornitura di X piattaforma a finestre e la configurazione contesto, si inserisce e le associazioni citate.

OpenGL - ci sono diverse versioni, per l'applicazione, la modalità immediata, legacy, è probabilmente accettabile.

Ecco alcuni link per l'apprendimento - Non sentirti obbligato a leggerli tutti - scegli gli argomenti rilevanti per te.

+0

Grazie mille! Ricordo che circa 2 anni fa ho deciso di imparare OpenGL (dopo aver imparato il C++) e non sono mai arrivato da nessuna parte perché non ero abbastanza tecnico. Ricordo davvero di aver sentito parlare di GLUT, ma non ho mai saputo cosa fosse! – CodeKingPlusPlus

+0

@CodeKingPlusPlus inizia in piccolo - Scommetto che puoi ottenere il rendering delle linee 3D abbastanza rapidamente –

+0

Nel tuo primo collegamento, devi installare qualcos'altro oltre a 'pyglet'? L'interprete python mi dà un sacco di errori dopo che ho provato ad eseguire il primo esempio. – CodeKingPlusPlus

14

Il modo più semplice per la visualizzazione 3D in Python è VPython.

Ad esempio, per disegnare una curva a forma di un quadrato, è solo:

square = curve(pos=[(0,0),(0,1),(1,1),(1,0),(0,0)]) 

Questo è di gran lunga più facile che MayaVi, VTK, OpenGL, ecc

Un'altra opzione facile è matplotlib di Grafica 3D È migliore sui dettagli quantitativi, ma non così semplice, veloce e interattivo per la parte 3D.