Aller au contenu
View in the app

A better way to browse. Learn more.

Next

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Résolu]Problème graph temps réel OpenGL

Featured Replies

Posté(e)

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?

:byebye:

Modifié par Barroud

Posté(e)
  • Auteur

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...

Posté(e)

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 ...

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.