Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2019-09-26 12:35:56 Boucle incrémentation décrémentation

fabzefab66
membre
Date d'inscription: 2015-12-01
Messages: 18

Boucle incrémentation décrémentation



Bonjour,
J'aimerais afficher une liste d'images une à une à chaque fois que j'appuie sur une touche, dans un sens comme dans l'autre sans que ça s'arrête. Si je vais dans l'ordre de ma liste, une fois au bout ça reviens à 0, par contre si je veux aller dans l'autre sens, une fois à 0, je n'arrive pas à retourner sur la fin de ma liste.
Pouvez-vous m'aider?
Voici le code:

int n = 9;
PImage[] images = new PImage[n];
int b; // position dans l'espace de la matrice

void setup(){
  size(800, 600);
    frameRate(10);
  noStroke();
  for(int i = 0; i < n; i++){
    images[i] = loadImage("marey_" + i + ".jpg");
    }
}

void draw(){
  background(255);
  image(images[b], 0, 0, width, height);
}

void keyReleased(){

  if(keyCode == LEFT){
    b--;
    if(b<=0) b= images.length;
  }

  if(keyCode == RIGHT){
    b++;
  if (b>= images.length) b = 0;
  }}

Hors ligne

 

#2 2019-09-26 15:52:30 Re : Boucle incrémentation décrémentation

J-F.M
membre
Date d'inscription: 2015-11-21
Messages: 19

Re: Boucle incrémentation décrémentation



if(keyCode == LEFT){
    b--;
    if(b<=0) b= images.length-1;
  }

Hors ligne

 

#3 2019-09-26 15:56:36 Re : Boucle incrémentation décrémentation

J-F.M
membre
Date d'inscription: 2015-11-21
Messages: 19

Re: Boucle incrémentation décrémentation



images.length = le nombre d'éléments dans ton tableau = 10
mais en fait l'indexation se fait de 0 à 9
donc images[10] n'existe pas

Hors ligne

 

#4 2019-09-26 16:08:47 Re : Boucle incrémentation décrémentation

J-F.M
membre
Date d'inscription: 2015-11-21
Messages: 19

Re: Boucle incrémentation décrémentation



En plus pour ne pas perdre l'élément 0 avec LEFT :
if(b<0) b= images.length-1;

Hors ligne

 

#5 2019-10-01 12:36:33 Re : Boucle incrémentation décrémentation

fabzefab66
membre
Date d'inscription: 2015-12-01
Messages: 18

Re: Boucle incrémentation décrémentation



Super merci, je me doutais bien que c'était simple, quand on est dessus que de temps en temps, on oublie la logique.
Sur le programme final, j'ai un autre soucis, mais je vais y réfléchir plus posément.
Encore merci pour la réponse

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024