Newsgroup: it.comp.lang.c
Titolo: [crosspost]disegnare in C

ciao,
sto creando un'applicazione in C sotto windowsXP utilizzando "Microsoft 
Visual C".
La mia applicazione è di tipo "console application".
Sommariamente il suo funzionamento consiste nel ricevere coordinate da un 
dispositivo in movimento; il programma finale non avrà bisogno di nessun 
orpello grafico (per questo è di tipo "console application".), ma per 
testarla mi sarebbe comodo poter tracciare la traiettoria disegnando un 
punto per ogni coordinata ricevuta.
In pratica vorrei aprire un pannello e disegnare dei punti di coordinate X,Y
Se fosse possibile dovrei anche disegnare un quadrilatero di vertici A,B,C,D 
di cui conosco le coordinate X,Y
Nel caso non potessi integrarlo all'interno della "console application" come 
potrei creare un programma con GUI in attesa di coordinate? Come le potrei 
passare durante l'esecuzione? socket?
GRAZIE
Cendo

 di cui conosco le coordinate X,Y
Potresti creare un file con scritture in SVG
per visionare alla fine il grafico...
vedi per es 
http://www.html.it/svg/svg_03.htm
Saluti
JJ
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
Io consiglio di usare direttamente la libreria cairo.
Saluti  Manlio Perillo

 vedi per es 
http://www.html.it/svg/svg_03.htm
ho dato un'occhiata al tutorial e sembra carino (non ne avevo mai sentito 
parlare).
Vorrei però che il grafico si aggiornasse "real time", ogni volta che ricevo 
una coordinata voglio visualizzarla immediatamente. Sapresti come fare?
Grazie
Cendo 

 Io consiglio di usare direttamente la libreria cairo.
Ho dato un'occhiata ma se non ho capito male funziona con FireFox...
Io ho a disposizione internet explorer.
Grazie
Cendo

Cendo ha scritto:

Cerca delle librerie grafiche, tipo quelle per realizzare videogiochi. 
Io conosco Allegro, pero' ti avverto che non e' molto veloce e immediata 
da usare e quindi potrebbe non essere la cosa migliore se vuoi solo una 
semplice interfaccia di "debug" che poi andra' eliminata.
-- 
Devaraja (Xdevaraja87^gmail^c0mX)
Linux Registerd User #338167
http://counter.li.org

Cendo ha scritto:

E non puoi farti un favore e installare Firefox? :-)


 passare durante l'esecuzione? socket?
Pipe

Cendo ha scritto:

Cosa centra FireFox?
cairo e' una libreria grafica multipiattaforma
http://cairographics.org/
Saluti  Manlio Perillo

 punto per ogni coordinata ricevuta.
Secondo me, e' piu' complesso far parlare la tua applicazione che riceve 
ed elabora i dati con un'altra applicazione che dovrebbe rappresentarli 
graficamente, rispetto ad avere un'applicazione monolitica che fa tutto.
In altri termini, potresti decidere di creare una "Win32 Application" da 
Visual C++, usando ad esempio le librerie GDI di Windows per la grafica 
(niente di complicato, poiche' ho capito che ti basta disegnare punti e 
linee).
Non devi installare nessuna DLL, nessun file header, nessun file .lib; 
se usi Visual C++ hai tutto gia' pronto all'uso!
E la tua applicazione funzionera' sui vari Windows 9x/2K/XP.
Ovviamente, se sviluppi codice in maniera modulare, non ci vuol niente, 
a fine progetto, ad estrarre i file .c/.h che fanno il lavoro "console" 
dal resto del programma che si occupa di disegnare la grafica.
Secondo me, ripeto, sviluppare tutto il sistema di interfacciamento tra 
due applicazioni e' piu' complesso (almeno, in C/C++ sotto Windows).
Ciao

 
Ti sbagli per due motivi:
1) Far dialogare due processi tramite pipe e' quasi banale, specialmente 
se come comandi usi semplici stringhe separate da \n
2) Se il programma base esegue dei calcoli impegnativi, eseguendolo come 
processo separato eviti di bloccare l'interfaccia grafica e di dover 
ricorrere all'uso dei thread (che di solito causano piu' problemi di 
quanti ne risolvano)
Saluti  Manlio Perillo

 una coordinata voglio visualizzarla immediatamente. Sapresti come fare?
Direi di sì.
Si tratta di comandare un "sistema tracciatore".
Se questo è un dispositivo "esterno" basta comunicare 
secondo il protocollo (parallela->plotter tanto per fare un esempio),
ma se, come penso, è la classica memoria grafica "interna" allora
c'è appositamente la GDI.
Ora, tutto in un eseguibile o in due separati processi del tipo
exe_console + exe_visualizzatore?
Personalmente farei tutto in un unico progetto lasciando 
a opportune direttive di compilazione o di avvio l'abilitazione
della versione "debug".
L'alternativa a due processi poi comporta una scelta ottimale di un
sistema di comunicazione tra quelli elencati in 
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ipc/base/interprocess_communications.asp
e può diventare molto interessante secondo le prospettive
di futuri sviluppi o modularizzazioni.
Chiaramente tutto dipende anche dal significato preciso,
nel caso in questione, di "real time".
Buon lavoro :)


 La mia applicazione è di tipo "console application".
Prova 
http://www.dislin.de/
Io la uso con LCC e funge !
Bye
Luc

 Cendo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

GRAZIE A TUTTI,
mi avete dato un sacco di dritte, anche molto piů di quello che ho chiesto!
Adesso vedrň di riorganizzare tutte le informazioni che mi avete dato, 
sperando di non fare casino...
Ciao
Cendo