2010-11-17 17 views
8

Sto cercando una libreria GUI Python che possa riscrivere il rendering/disegno.GUI Python con rendering/disegno personalizzato

Deve sostenere i widget di base (pulsanti, caselle combinate, caselle di riepilogo, editor di testo, pergamene,), gestione del layout, la gestione degli eventi

La cosa che sto cercando è quello di utilizzare il mio personalizzato Direct3D e OpenGL renderer per tutto il disegno/rendering dell'interfaccia grafica.

modifica suggerita da S.Lott: ho bisogno di usare questa GUI per un editor 3D, dato che devo trascinare un sacco di cose dagli elementi della GUI all'area di rendering 3d, volevo usare un sistema GUI che esegue il rendering con Direct3D (preffered) o OpenGL. Deve anche avere un bell'aspetto. È difficile ottenere questo risultato con la GUI come WPF, poiché WPF non ha un handle. Inoltre deve essere assolutamente gratuito per uso commerciale.

Edit: Vorrei anche utilizzare il contesto di rendering ho inizializzato per la parte 3D nella mia applicazione

+1

Stai chiedendo pyGTK? –

+0

@ S.Lott: ho considerato GTK e PyGTK, ma sembra piuttosto difficile sovrascrivere il rendering. Più il fatto che porti molte dipendenze. Stavo cercando qualcosa di semplice –

+0

"Deve supportare i widget di base ... gestione del layout, gestione degli eventi" vs. "Stavo cercando qualcosa di semplice". Non penso che tu possa trovare entrambi. Per favore aggiorna le tue domande con informazioni sufficienti per capire che cosa stai cercando. –

risposta

2

Non so a cosa stai lavorando, quindi forse questo non è quello che stai cercando, ma: Hai considerato l'utilizzo di Blender + il suo motore di gioco?

Supporta lo scripting Python e fornisce alcune API per creare anche GUI "standard", consentendoti di fare un sacco di cose interessanti con i modelli 3d. Questo potrebbe essere particolarmente utile se la tua applicazione fa un sacco di manipolazione di modelli 3d.

Quindi puoi "compilarlo" (crea solo il pacchetto all-in-one contenente tutte le dipendenze, in un modo simile a quello py2exe fa) per qualsiasi piattaforma di cui hai bisogno.

0

Ci sono attacchi OpenGL in Python che ti porterà il rendering 3D. Personalmente, userei wxpython come gestore 'gui' e uso i binding per fare opengl per il resto. Wx ha i demo necessari (controlla l'installazione delle demo di wxpython) e le informazioni nelle loro demo di GLCanvas.

Un altro codice di esempio è here.

+0

Vorrei anche usare il contesto di rendering che ho inizializzato per la parte 3d nella mia aplicazione –

+0

Credo che l'OP cerchi una GUI leggera e solo logica (cioè senza alcun rendering specifico all'interno). Ne ho visto uno e ho avuto un google, ma a quanto pare non è più finito, purtroppo. – Kos

1

È possibile utilizzare Qt Scene Framework con il rendering OpenGL. Ci sono molti esempi sul sito di Nokia.

1

Il miglior toolkit GUI Python è wxPython (noto anche come wxWidgets).

Questo non è solo il mio parere, si veda anche: wxPython quotes

wxPython è il migliore e più maturo cross-platform GUI toolkit, dato un certo numero di vincoli . L'unico motivo wxPython non è la GUI Python standard toolkit è che Tkinter era lì prima . - Guido van Rossum

Non posso dire quanto sia facile o difficile aggiungere il proprio renderer.

+0

Non è così difficile aggiungere il proprio riproduttore. – vy32