GLUT Position du curseur

dark_naruto25
Messages postés
127
Date d'inscription
mardi 23 août 2005
Statut
Membre
Dernière intervention
9 mai 2011
- 25 janv. 2007 à 16:11
yacjapan
Messages postés
10
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
11 mars 2007
- 21 févr. 2007 à 10:57
Salut les compagnons,
Je cherche depuis pas mal de temps une fonction GLUT (voire OpenGL) qui me permettrait d'avoir la position du curseur à tout moment.
Je suis en train de faire un projet C/GLUT/OpenGL multifichiers. J'ai donc penser à mettre deux variables globales, mais vu que c'est une librairie que je code... Ca impliquerai de poluer les fonction de rappel avec une fonction qui mémorise tout le temps la position. Et j'ai beaucoup d'objet, je laisse donc tomber les variables d'état à l'intérieur de chaque objet.
Quelqu'un à une idée ?
Merci de votre attention

2 réponses

luhtor
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
26 janv. 2007 à 09:49
Bas je vois pas ou est le pb de sauver les coordonnées de la souris. Tu l'enregistres dans une de tes classes qui s'occupent de gérer la souris et tu fais une fonction pour retourner les coordonnées.
0
yacjapan
Messages postés
10
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
11 mars 2007

21 févr. 2007 à 10:57
<li>
void souris(int boutton, int state, int c, int y)//c et y pour la pousition
</li>
<li>{
</li>
<li>
switch(button)
</li>
<li> {
</li>
<li>
case GLUT_LEFT_BUTTON: exit(0);//si on clique sur le boutton gauche de la souris alors exit</li>
<li>
break;
</li>
<li>
case GLUT_MIDDLE_BUTTON: exit(0);//si on clique sur le boutton du milieu de la souris alors exit</li>
<li>
break;
</li>
<li>
case GLUT_RIGHT_BUTTON: exit(0);//si on clique sur le boutton droit de la souris alors exit</li>
<li>
break;
</li>
<li> }
</li>
<li>


</li>
<li>}
</li>





<li>
int main(int argc, char** argv)
</li>
<li>{
</li>
<li>glutInit(&argc, argv);
</li>
<li>glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
</li>
<li>glutCreateWindow("Fenêtre avec glut"); // Création de la fenêtre avec GLUT</li>
<li>glutMouseFunc(souris);
</li>
<li>glutMainLoop();
</li>
<li>}
</li>
<li>


</li>
<li>
/*

</li>
<li>vous pouvez aussi mettre:
</li>
<li>


</li>
<li>glutSetCursor(GLUT_CURSOR_RIGHT_ARROW);//pour changer le curseur
</li>
<li>


</li>
<li>ou
</li>
<li>


</li>
<li>GLUT_CURSOR_RIGHT_ARROW
</li>
<li> Fleche haut droit (Pour gaucher).
</li>
<li>GLUT_CURSOR_LEFT_ARROW
</li>
<li> Fleche haut gauche (normal).
</li>
<li>GLUT_CURSOR_INFO
</li>
<li> Une main qui pointe.
</li>
<li>GLUT_CURSOR_DESTROY
</li>
<li> Aucune selection.
</li>
<li>GLUT_CURSOR_HELP
</li>
<li> Point d'interrogation.
</li>
<li>GLUT_CURSOR_CYCLE
</li>
<li> Une fleche tournant dans un cercle.
</li>
<li>GLUT_CURSOR_SPRAY
</li>
<li> Le symbole du spray.
</li>
<li>GLUT_CURSOR_WAIT
</li>
<li> Sablier.
</li>
<li>GLUT_CURSOR_TEXT
</li>
<li> Insertion de texte (comme un I).
</li>
<li>GLUT_CURSOR_CROSSHAIR
</li>
<li> Une croix simple.
</li>
<li>GLUT_CURSOR_UP_DOWN
</li>
<li> Fleche bidirectionnel pointant vers le haut et le bas.
</li>
<li>GLUT_CURSOR_LEFT_RIGHT
</li>
<li> Fleche bidirectionnel pointant vers la gauche et la droite.
</li>
<li>GLUT_CURSOR_TOP_SIDE
</li>
<li> Une fleche pointant vers le haut.
</li>
<li>GLUT_CURSOR_BOTTOM_SIDE
</li>
<li> Une fleche pointant vers le bas.
</li>
<li>GLUT_CURSOR_LEFT_SIDE
</li>
<li> Une fleche pointant vers la gauche.
</li>
<li>GLUT_CURSOR_RIGHT_SIDE
</li>
<li> Une fleche pointant vers la droite.
</li>
<li>GLUT_CURSOR_TOP_LEFT_CORNER
</li>
<li> Une fleche pointant vers le haut a gauche.
</li>
<li>GLUT_CURSOR_TOP_RIGHT_CORNER
</li>
<li> Une fleche pointant vers le haut a droite.
</li>
<li>GLUT_CURSOR_BOTTOM_RIGHT_CORNER
</li>
<li> Une fleche pointant vers le bas a gauche.
</li>
<li>GLUT_CURSOR_BOTTOM_LEFT_CORNER
</li>
<li> Une fleche pointant vers le bas a droite.
</li>
<li>GLUT_CURSOR_FULL_CROSSHAIR
</li>
<li> Une croix en pleine ecran (Si possible, sinon : GLUT_CURSOR_CROSSHAIR).
</li>
<li>GLUT_CURSOR_NONE
</li>
<li> Curseur invisible.
</li>
<li>GLUT_CURSOR_INHERIT
</li>
<li> Utilise le pointeur parent.
</li>
<li>


</li>
<li>


</li>
<li>une fonction pour modifier la position de la souris
</li>
<li>


</li>
<li>glutWarpPointer(500,200);
</li>
<li>




</li>
0