IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Callback pour la gestion de la souris avec GLUT


Sujet :

C

  1. #1
    Futur Membre du Club
    Femme Profil pro
    licence fac des sciences
    Inscrit en
    Mai 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : licence fac des sciences

    Informations forums :
    Inscription : Mai 2016
    Messages : 11
    Points : 7
    Points
    7
    Par défaut Callback pour la gestion de la souris avec GLUT
    Bonjour,
    j'ai une fonction a écrire avec les GLUT, voici l'énoncé:

    "Trouvez sur Internet comment on redéfinit le ”callback” pour la gestion de la souris avec GLUT. Ecrivez une fonction qui détermine dans quelle case du damier la souris a cliqué. Affichez le résultat dans la console (avec printf). Dessinez un cercle dans la case qui a été cliquée"

    J'ai déjà mon damier et pour le callback souris, j'ai cherché j'ai trouvé qu'on devait utiliser cette fonction :
    glutMouseFunc() : définit la fonction à appeler lorsqu'un bouton de la souris est appuyé ou relâché. La fonction utilisateur doit avoir les paramètres (int button, int state, int x, int y), où button peu valoir GLUT_LEFT_BUTTON, GLUT_MIDDLE_BUTTON, ou GLUT_RIGHT_BUTTON, state vaut GLUT_UP ou GLUT_DOWN, et x et y sont les coordonnées de la souris par rapport à le fenêtre.

    Donc je sais que je dois créer une fonction avant mon main, elle doit utiliser les paramètres button, state, x et y et que je devrais utiliser Mon damier dedans. Or, je ne sais pas comment commencer, ni ce qu'elle doit contenir.
    voici mon damier:

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    void carre(float x, float y,float taille)
    {
        glBegin(GL_POLYGON);
        glVertex2f(x-taille/2,y+taille/2);
        glVertex2f(x+taille/2,y+taille/2);
        glVertex2f(x+taille/2,y-taille/2);
        glVertex2f(x-taille/2,y-taille/2);
        glEnd();
     
    }
     
    void display(void)
    {
     
        glClear( GL_COLOR_BUFFER_BIT);
        int i,j;
        for(i=0; i<10; i=i+2)
        {
            for(j=0; j<10; j=j+1)
            {
                glColor3f(1.0,0,0);
                carre(1.0/2+i+j%2,1.0/2+j,1);
     
                glColor3f(0,0,1);
                carre(1.0/2+i+(j+1)%2,1.0/2+j,1);
            }
     
        }
        glFlush();
    }
    Si quelqu'un pouvait m'aider, j'apprécierai vraiment

    mercii!!

  2. #2
    Expert confirmé
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Points : 4 182
    Points
    4 182
    Par défaut
    Oh le bel exercice OpenGL 1.x en 2016..

    L'énoncé est assez clair, et te décompose même le problème. Qu'est-ce qui te bloque exactement ?

  3. #3
    Futur Membre du Club
    Femme Profil pro
    licence fac des sciences
    Inscrit en
    Mai 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : licence fac des sciences

    Informations forums :
    Inscription : Mai 2016
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Matt_Houston Voir le message
    Oh le bel exercice OpenGL 1.x en 2016..

    L'énoncé est assez clair, et te décompose même le problème. Qu'est-ce qui te bloque exactement ?
    Merci pour votre réponse, et je m'excuse de ne pas avoir répondu plus vite.
    Nous venons juste de commencer les OpenGL, on a fait l'exercice du damier puis du cercle. Mais je ne comprends pas grand chose.. Je ne comprends pas ce que veut dire OpenGL .. comment je dois procéder svp ?

  4. #4
    Expert confirmé
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Points : 4 182
    Points
    4 182
    Par défaut
    Citation Envoyé par myoui Voir le message
    Mais je ne comprends pas grand chose..
    Ben faut être plus précise, on va pas te refaire le cours du prof. Il existe des millions de sources sur le net à propos d'OpenGL, à commencer par Wikipédia. Je te laisse te renseigner seule. Sache seulement que l'OpenGL qu'on t'enseigne est obsolète depuis plusieurs années déjà.

    Pour ce qui est de ton énoncé, une grande partie de ce qu'on te demande de faire n'a pas de relation directe avec OpenGL. Analyse bien le problème et décompose-le.

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/11/2013, 13h27
  2. DeltaPosition pour la souris avec glut
    Par Charlie111 dans le forum OpenGL
    Réponses: 1
    Dernier message: 03/06/2010, 01h52
  3. Réponses: 2
    Dernier message: 31/10/2007, 08h48
  4. Problème gestion souris avec glademm
    Par flow++ dans le forum Matériel
    Réponses: 1
    Dernier message: 23/05/2006, 10h20
  5. aide pour la gestion de la souris
    Par ghyslain dans le forum OpenGL
    Réponses: 15
    Dernier message: 21/05/2006, 02h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo