Newsgroup: it.comp.lang.c++
Titolo: Interfaccia grafica c++ o tcl/tk

Salve a tutti.
Ho scritto un codice in c++ che ad ogni ciclo prende la posizione X e
Y di un punto (dagli encoder del robot). Ora io vorrei disegnare
quella posizione su un piano mediante un pallino che si muove sullo
schermo. In pratica vorrei realizzare un'interfaccia grafica, simile
ad un orologio analogico, solo che al posto dei numeri ci sono i
target da raggiungere e mediante la lettura degli encoder del robot,
quindi mediante la lettura ad ogni cilco della posizione X e Y voglio
visualizzare anche la posizione attuale.
Secondo voi è + facile da fare direttamente in c++ o uso le librerie
tcl/tk? Nel caso mi scrivessi un codice tcl, come faccio poi a
inserirlo nel codice c? Va richiamato nel codice c? Va aggiunto
all'interno tutto il codice?
Grazie

 tcl/tk? 
Devi necessariamente utilizzare delle librerie grafiche perché il C++, 
in sč, non ha la gestione della grafica. Secondo me la libreria piů 
semplice da utilizzare, in questa situazione, č la glut.
E.

 E.
Ok, ora cerco qualcosa.
Mi sono dimenticato di aggiungere che la devo utilizzare sotto windows
e uso visual c++.

 e uso visual c++.
Ti direi di usare le Qt. Funzionano con Win32, Linux e Mac, e (se non 
sbaglio) hai anche delle integrazioni con Visual C++.

 sbaglio) hai anche delle integrazioni con Visual C++.
il supporto al visualstudio e al compilatore di microsoft è solo nella
versione commerciale che costa un bel pò.
Se hai necessità di usare il visual c++ e il budget è quello che è hai e
 il software deve anche avere un interfaccia tradizione con bottoni etc
hai due possibilità:
MFC
wxWidgets (
wxwidgets.org
)
sono entrambe "simili" per certi versi, ad esempio: gestione degli
tramite event table, cstring/wxstring etc... se posso esprimere un
parere personale le wxwidgets sono leggermente più semplici ed hanno un
widgets che rappresenta un canvas opengl (wxGLCanvas).
Una terza alternativa potrebbe fltk (
fltk.org
) più minimalista (e i
widget rispetto a mfc e wxwidgets non sono nativi ma ridisegnati, ma
comunque il tema plastic è carino) hai comunque un widgets per opengl e
gli eventi sono gestiti tramite semplici (e insicure) funzioni di callback.
Se l'interfaccia grafica standard non è un problema puoi usare
glut+opengl oppure anche sdl+opengl.
A parte mfc le altre librerie hanno il vantaggio di esistere anche su
altre piattaforme (per le wxwidgets e fltk: linux,mac,freebsd,solaris)
le sdl esistono anche per piattaforme più esotiche.
michelangelo

 sbaglio) hai anche delle integrazioni con Visual C++.
Con la 4.5 le Qt LGPL vengono fornite anche con un sdk, che integra al
suo interno sia un ide con debugger integrato (QtCreator) che un
compilatore (minGW). Se sei abituato a visual studio, puoi provare
QtCreator che essendo specifico per le Qt offre un alto livello di
integrazione (a livello di documentazione, di designer, ecc..) e che
ha anche il vantaggio di non essere un bisonte come la maggior parte
degli ide.

Gianni Valdambrini ha scritto:

e se il visual c++ che sta usando è il 6.0 o versione anche più vecchia
rispetto al gc 4.0 dovrà fare qualche modifica al codice..


wrote:

Vero, ma:
1. il codice non potrà che trarre beneficio dall'utilizzo di un
compilatore più recente
2. se non ricordo male, il minGW fornito con Qt è quello che usa il
gcc 3.4
3. se proprio deve rimanere a Visual C++ l'integrazione con quello non
è poi male (parlo però per sentito dire).. e continua ad essere
migliorata continuamente.. (vedi per esempio
http://labs.trolltech.com/blogs/2009/03/27/speeding-up-visual-c-qt-builds/
)


l'integrazione è disponibile solo con la versione commerciale delle qt,
per il resto concordo che il codice può trarre beneficio da una versione
migliore del compilatore ma alle volte non si può fare per motivi di
tempo noi non sappiamo nulla del progetto.
Comunque più che il qtcreator io mi trovo bene con code::blocks ma ora
siamo decisamente ot :)

 - Mostra testo citato -
Partiamo dal presupposto che io non ho ma fatto un'interfaccia
grafica!
Ho lavorato solo con il c, in particolare con visual c++ 6.0, perchè i
file di esempio erano scritti con vs6. Secondo voi posso benissimo
importarli in VS2008?
Sto provando ad utilizzare sia gult che qt, devo dire che mi risulta +
facile gult, qt mi sembra troppo articolato... anche se ha +
potenzialità.
Io dovrei fare una semplice interfaccia grafica, una semplice area di
lavoro bianca con dei pallini rossi fissi ed un pallino blu che si
muove a seconda delle posizioni X e Y rilasciate ad ogni ciclo, senza
pulsanti uguale a questa:
http://img4.imageshack.us/img4/4923/clockt.jpg
dove in rosso ci sono i target da raggiungere, e in blu è la posizione
aggiornata ad ogni ciclo. In pratica dovrebbe lampeggiare un pallino
rosso alla volta, io con il blu mi muovo ed una volta che l'ho
raggiunto, dovrebbe lampeggiare il pallino rosso successivo, così in
avanti fino a completare le 8 direzioni.
Cosa posso utilizzare per semplificarmi il compito? Qualcuno mi
potrebbe aiutare ad iniziare a scrivere il codice?

Piranha ha scritto:

allora in questo caso secondo me le sdl sarebbero la sceltà più azzeccata.

 potrebbe aiutare ad iniziare a scrivere il codice?
Potresti prendere spunto da questo:
http://web.math.unifi.it/users/paolini/didattica/tesi/triennale/ulivi/
se riesci a compilarlo sei a cavallo...
E.