Barroud Posté(e) le 9 janvier 2006 Partager Posté(e) le 9 janvier 2006 Bonjour, J'essaye de coder un graphique pour visualiser une voie d'acquisition en temps réel mais mon graphique n'apparait pas dès que j'insére mon code dans une boucle à 1-10Hz. Alors qu'il fonctionne trés bien si je le lance une seule fois... glClear(GL_ACCUM_BUFFER_BIT); glClearColor( 0.0, 0.0, 0.0, 0.0); glColor3f(1,0,1); glBegin(GL_LINES); glVertex2i(5,10); glVertex2i(395,10); glEnd(); glBegin(GL_LINES); glVertex2i(10,5); glVertex2i(10,145); glEnd(); glBegin(GL_LINES); glVertex2i(5,140); glVertex2i(10,145); glEnd(); glBegin(GL_LINES); glVertex2i(15,140); glVertex2i(10,145); glEnd(); glBegin(GL_LINES); glVertex2i(390,15); glVertex2i(395,10); glEnd(); glBegin(GL_LINES); glVertex2i(390,5); glVertex2i(395,10); glEnd(); TabGraph[ptrTabGraph]=Acqui->pos_dir_f; if (ptrTabGraph<99) ptrTabGraph++; else ptrTabGraph=0; for(i=0;i<100;i++) { glBegin(GL_LINES); glVertex2i(4*i,OLDY); glVertex2i(4*(i+1),TabGraph[i]); glEnd(); OLDY=TabGraph[i]; } x=15; y=130; s="Graph OpenGL en cours de developpement"; longueur=strlen(s); glRasterPos2i(x,y); for(i=0;i<longueur;i++) glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12,s[i]); glFlush(); MyGLCanvas->SwapBuffers(); J'arrive pas à saisir le problème puisque comme, je disais, le code fonctionne correctement en le lancant par l'appui sur un bouton mais pas en l'englobant dans une boucle à 10Hz... Une idée peut être? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Barroud Posté(e) le 9 janvier 2006 Auteur Partager Posté(e) le 9 janvier 2006 Il fallait que j'intégre ce code dans le onpaint de ma frame et que je fasse un ->refresh() de la frame à chaque execution de ma boucle... Lien vers le commentaire Partager sur d’autres sites More sharing options...
tsubasaleguedin Posté(e) le 9 janvier 2006 Partager Posté(e) le 9 janvier 2006 Ba eu oui sa marche comme ca opengl. Ta une fonction init, une fonction redraw (ou tu boucle dessus), et optionnellement un resize/reshape. Opengl dessine image par image les animations (meme si c'est fixe). C'est dur a croire vu les puissance des machines actuels =) Pareil pour la lumiere, je te conseil de bien te documenté sur celle ci ( FAQ opengl), car si tu les declare dans l'init tu risque d'avoir des surprise quand tu fera des glrotate ... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.