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

OpenGL Discussion :

Fonction d'affichage


Sujet :

OpenGL

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 69
    Points : 37
    Points
    37
    Par défaut Fonction d'affichage
    Bonjour, merci d'avance àceux qui tenteront de m'aider.

    Est ce que glutDisplayFunc( " " ); est la seul fonction d'affichage?
    Enfin c'est pas vraiment la question que je voulais vous poser.
    Mon problème est le suivant.
    J'ai besoin d'afficher une seule fois une grille 2D, et suivant que le l'utilisateur clic dans la grille, la couleure de la case change.
    Le prob c'est k chake fois ke je clic, la grille de départ est réaffiché.

  2. #2
    Membre averti Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Points : 332
    Points
    332
    Par défaut
    bas t as besoin que d une fonction d affichage mais après celle-ci peut en appeler d'autres
    sinon je capte pas vraiment le pb .... à par peu être juste rafraichir une partie de l écran et non l écran totalement... ça c faisable je crois bien

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Points : 1 046
    Points
    1 046
    Par défaut
    Salut,

    Ton probleme est assez simple, mais tu cherches a le resoudre de la mauvaise maniere je pense. Il est tout à fait normal que tu n'ais qu'une seule fonction d'affichage, par contre il faut que tu te serves de variables pour sauvegarder l'état de ta grille afin de la dessiner en conséquence dans ta fonction d'affichage.

    Tu cherches a dessiner une grille, et qd l'utilisateur clic dans une de ses cases, tu veux que la case change de couleur. Bon, premierement il te faut une variable de type tableau de couleur de deux dimensions qui represente ta grille, genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    struct SColor
    {
       float R;
       float G;
       float B;
    }
     
     
    SColor MaGrille[4][4]; //une grille de 4*4 cases
    Tu initialises ta grille avec les couleurs de depart, ensuite dans l'evenement "clic" tu identifies dans quelle case l'utilisateur a cliqué, et tu modifies la couleur de cette case dans ta variable :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    //l'utilisateur a cliqué dans la case tout en haut à gauche, la case devient rouge :
    MaGrille[0][0].R = 1;
    MaGrille[0][0].G = 0;
    MaGrille[0][0].B = 0;
    Ensuite il ne te reste plus dans ta fonction d'affichage qu'a redessiner ENTIEREMENT ta grille en fonction de ta variable ma grille, voilou c'est tout simple, le truc c'est qu'il faut que tu gardes toujours en mémoire l'etat de ta grille. J'espere que j'ai été assez clair, sinon hesite pas a me demander des precisions.

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/04/2007, 21h50
  2. Réponses: 1
    Dernier message: 23/02/2007, 08h49
  3. Réponses: 4
    Dernier message: 11/07/2006, 22h58
  4. fonction d'affichage de code php en couleur
    Par winnie82 dans le forum Langage
    Réponses: 3
    Dernier message: 14/06/2006, 11h14
  5. une fonction d'affichage à rajouter
    Par isidore dans le forum C++
    Réponses: 17
    Dernier message: 27/02/2005, 17h03

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