PDA

View Full Version : Programmare con GUI


Raghnar-The coWolf-
29-06-2012, 21:40
Salve a tutti,
sono un ricercatore e programmo quotidianamente simulazioni scientifiche in Fortran, C++, Bash e Perl...

Tuttavia non ho alcuna competenza per la programmazione relativa a Grafica e GUI, e vorrei addentrarmi.

1- Se volessi includere una GUI e Grafica alle mie simulazioni come potrei fare?
2- Per programmare qualcosa di test, ad esempio un Editor per programmare con una interfaccia grafica, come potrei fare?


Ciao a tutti e grazie

wizard1993
29-06-2012, 21:44
1- Se volessi includere una GUI e Grafica alle mie simulazioni come potrei fare?
2- Per programmare qualcosa di test, ad esempio un Editor per programmare con una interfaccia grafica, come potrei fare?


Ciao a tutti e grazie

Prendi una delle tante librerie grafiche supportate dai linguaggi di programmazione e usi le api messe a disposizione. Personalmente non ne conosco nessuna per fortran ma per c++ ne esistono molte, sia di GUI pura, sia di disegno.
Se vuoi comunque un ambiente con un buon designer di interfacce, ritengo (per c++ almeno) qt creator e le librerie qt una delle migliori scelte

LMCH
30-06-2012, 01:10
Salve a tutti,
sono un ricercatore e programmo quotidianamente simulazioni scientifiche in Fortran, C++, Bash e Perl...

Tuttavia non ho alcuna competenza per la programmazione relativa a Grafica e GUI, e vorrei addentrarmi.

1- Se volessi includere una GUI e Grafica alle mie simulazioni come potrei fare?
2- Per programmare qualcosa di test, ad esempio un Editor per programmare con una interfaccia grafica, come potrei fare?


Io quando posso utilizzo Qt http://qt-project.org/
(guarda qui per documentazione orientativa e tutorial http://qt.nokia.com/learning
e poi Qt di suo include documentazione integrata (accessibile da Qt Creator e Qt Assistant) di buon livello).

Il vantaggio principale di Qt è che si programma in C++ con un "vero" sistema basato su design pattern ed oggetti, fornisce di base un fottio di roba multipiattaforma e sopratutto è molto versatile.
Attualmente gira su Linux, Windows, Windows CE, macOS, iOS, Android (porting allo stadio alpha 3, ma la sto già utilizzando per il porting di alcune applicazioni che prima giravano su Windows e Windows CE), VxWorks ed altro ancora.

Oltre al "pacchetto base" ci sono poi estensioni tipo
QWT http://qwt.sourceforge.net/
QwtPolar http://qwtpolar.sourceforge.net/
QwtPlot3D http://qwtplot3d.sourceforge.net/
e
GCF http://www.vcreatelogic.com/products/gcf/
ed a quello si può integrare
VTK Designer http://www.vcreatelogic.com/products/vtkd in modo da poter integrare nelle applicazioni VTK (http://www.vtk.org/) per la parte di grafica "ultra pesante".


Poi viste le tue esigenze potrebbe anche interessarti Scilab (http://www.scilab.org/), è una specie di Matlab open source scritto in Java, con un suo ambiente "tipo simulink" XCos che genera codice C e che ha la possibilità di integrare "blocchi funzione" esterni scritti in C e Fortran.
In pratica ti permette di "incapsulare" codice che hai già scritto ed integrarlo in un applicazione che lo usano come fonti di dati da postprocessare ulteriormente e poi da visualizzare in vari modi.

Raghnar-The coWolf-
02-07-2012, 17:23
Grazie 1000 per le indicazioni,
Voi per imparare avete seguito qualche tutorial?

[Kendall]
02-07-2012, 18:27
Grazie 1000 per le indicazioni,
Voi per imparare avete seguito qualche tutorial?

La documentazione di QT è una delle migliori attualmente disponibili per un framework. Ma da sola non basta perchè certe meccaniche non sono facili da imparare senza una linea guida (vedi per esempio la gestione degli eventi e il sistema signal-slot). Ti consiglio questo: C++ Gui Programming with QT4 (http://qt-project.org/books/view/c_gui_programming_with_qt_4_2nd_edition_the_official_c_qt_book). E' un po' la guida ufficiale di QT. La prima edizione dovrebbe essere scaricabile gratuitamente se non erro.