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

 Java Discussion :

processing: une methode qui ne fonctionne pas dans un while


Sujet :

Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Points : 8
    Points
    8
    Par défaut processing: une methode qui ne fonctionne pas dans un while
    Bonjour à tous.
    Voila un truc que je ne comprends pas. J'utilise Processing et j'ai créé une méthode pause() qui permet de faire une pause entre deux dessin.
    Lorsque je fais tourner le code sans utilisation de la méthode ça fonctionne, par contre lorsque j’insère la méthode pause() cela ne fonctionne plus... et je ne comprends pas. Il me semble que certaines méthodes ne peuvent être mise dans un while ou un for. Quelqu'un peut-il m'expliquer pourquoi? Je vous joint le programme ce-dessous :
    Code : 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
     
    void setup(){
      noLoop();
      size(100,100);
    }
     
    void cercle(int k){
      ellipse(10*k,15,10,10);
    }
     
    void pause(){
      int s=second();
      while (second()!=s+1){}
    }
     
    void draw(){
     int k=1;
     
      while(k<10){
        println(k);
        pause();
        cercle(k);
        k=k+1;
      }
    }
    Merci par avance pour vos futurs réponses.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 560
    Points : 21 622
    Points
    21 622
    Par défaut
    Hello,

    la méthode draw() est appelée lorsque le programme a besoin de savoir comment dessiner la seule et unique image affichée. Une image. Pas zéro, pas deux, pas trois, une. Si tu essaies de compter sur draw() pour afficher autre chose qu'une image, tu échoueras.

    Processing est un système qui réagit aux évènements, et qui appelle des méthodes lorsque ces évènements arrivent. Après l'exécution d'une méthode, il envoie le travail de cette méthode à l'écran et au reste du système, mais, pendant l'exécution, il ne se passe rien.
    Cela signifie entre autre, qu'une méthode pause() ne peut pas exister, puisque tu ne peux pas arrêter le déroulement d'une méthode en plein milieu et espérer qu'il se passe quelque chose.
    De toute façon il devrait être évident que si Processing pouvait bénéficier d'une méthode pause(), elle serait déjà là et ce ne serait pas à toi de la faire.

    Aussi longtemps que tu programmeras en Processing, tu dois oublier l'idée d'une méthode pause(), et te rappeler qu'à chaque fois que tu y repenseras, c'est parce que tu te trompes.


    Pour faire le programme dont tu as envie, je te suggère de te référer aux tutoriels et aux exemples de Processing. Notamment le programme Clock, qui affiche une horloge dont l'aiguille des secondes bouge toutes les secondes.

    La méthode draw() n'affiche qu'une seule image à chaque fois qu'elle est appelée, certes. Mais elle est appelée tout le temps, et à chaque fois, elle calcule quelle image elle doit dessiner en fonction de l'heure qu'il est. Tu dois faire pareil.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Ok ... Merci thelvin!!

Discussions similaires

  1. Commande SQL qui ne fonctionne pas dans une JSP
    Par crippy dans le forum JDBC
    Réponses: 1
    Dernier message: 14/12/2012, 09h50
  2. Binding qui ne fonctionne pas dans la source d'une image?
    Par takinelinfo dans le forum Windows Presentation Foundation
    Réponses: 6
    Dernier message: 07/09/2011, 15h55
  3. Condition qui ne fonctionne pas dans une page jsp
    Par Lopak dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 29/04/2010, 16h37
  4. Range.Offset(1) dans une boucle qui ne fonctionne pas
    Par Pierre.g dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/08/2008, 11h58
  5. Réponses: 6
    Dernier message: 22/05/2007, 09h55

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