//Effet barre de 30 pixels qui se déplace de gauche à droite donnant
//un effet négatif sur l’image :
for (int i = -250; i <=-220; i = i +1)
for (int j =-250; j <= 250; j = j +1) {
int pix = getPixel(i, j);
setPixel(i, j, 255 - pix);
}
}
Nous savons que la barre avance de pixels en pixels tout en gardant une largeur de 30 pixels.
On sait que i commence de -220 pixels et doit finir à 220 pixels.
On doit faire une boucle pour i mais on n’y arrive pas.
On sait que l’on doit utiliser la boucle “for” mais on ne sait comment faire.
On a fait plusieurs essais mais ce n’était pas cela.
Est-ce que vous pouvez nous aider s’il vous plaît ? :jap:
C’est quoi qui bloque exactement ?
Et personnellement, si une image fait w * h pixels, alors i, j ne peuvent valoir que [0, w[ et [0, h[ respectivement.
Et vu que ça vaut de gauche à droite, tu dois parcourir de i = w-1 à i = 0, sinon tu réécris les pixels et tu ne changes rien.
Alors c’est dans ta boucle i qu’il y a un problème
En supposant que la barre initiale est en place, tu dois déplacer son bord gauche de -250 à +220
Et à chaque fois, tu as deux pixels à inverser : le pixel i pour le remettre “normal”, et le pixel i+30 pour le mettre en inversé
Après, si tu veux voir ton effet de déplacement à l’écran, il faudra sûrement que tu rajoutes une tempo