» codelab : http://codelab.fr/accueil » Forum : Processing : http://codelab.fr/processing » Probleme : carré couleur de l'image et non pixel : http://codelab.fr/6078 Ceci est la version imprimable d'un sujet du forum, pour retourner à la version complète : Probleme : carré couleur de l'image et non pixel |
Alex_load — 2016-01-10 17:22:25 |
Bonjour, |
Mushussu — 2016-01-10 22:45:03 |
Bonsoir, int riot = 2; PImage [] img = new PImage[riot]; color riotCouleur; int indexriot, dimension, vitesse, x, y, posX, posY; float vitesseX; float vitesseY; void setup() { size(1000, 1000); frameRate(12); noStroke(); for (int i = 0; i < riot; i++) { img[i] = loadImage("image" + i + ".jpg"); } indexriot = 0; image(img[indexriot], 0, 0); vitesse = 1; posX = posY = 0; } void draw() { if (frameCount % vitesse == 0) copy(img[indexriot], x, y, 50, 50, x, y, 50, 50); } void keyPressed() { if (key == CODED) { if (keyCode == RIGHT) { x=x+5; } else if (keyCode == UP) { y=y-5; } else if (keyCode == DOWN) { y=y+5; } else if (keyCode == LEFT) { x=x-5; } } if (keyCode == BACKSPACE) { // SI la touche enfoncee est l espace image(img[indexriot], 0, 0); posX = posY = 0; } if (keyCode == 32) { // SI la touche enfoncee est l espace, prendre l image suivante dans l index d images indexriot = (indexriot < riot-1) ? indexriot = indexriot + 1 : 0; } } |
Alex_load — 2016-01-11 00:38:29 |
Oui :) c'est exactement ça!! Le carré dessine bien une autre image. |
Alex_load — 2016-01-11 00:53:49 |
Ou qu'il est un contour different pour qu'on le distingue en fait. |
Alex_load — 2016-01-11 01:11:56 |
Pour avoir un contour il me suffit de rajouter stroke et noFill. Mais est ce que c'est possible de le mettre qu'au premier parce la il se dessine sur tout les carrés? |
Mushussu — 2016-01-11 10:56:24 |
Bonjour, int nombreImages = 3; PImage[] img = new PImage[nombreImages]; color riotCouleur; int indexriot, dimension, vitesse, x, y, posX, posY; float vitesseX; float vitesseY; int tailleCurseur, largeur, hauteur; int[][] tableau; void setup() { size(600, 600); frameRate(12); strokeWeight(4); stroke(#000000); for (int i = 0; i < nombreImages; i++) { img[i] = loadImage("image" + i + ".jpg"); } indexriot = 0; tailleCurseur = 50; largeur = width / tailleCurseur; hauteur = height / tailleCurseur; tableau = new int[largeur][hauteur]; for (int i = 0; i < largeur; i++) { for (int j = 0; j < hauteur; j++) { tableau[i][j] = 0; } } noFill(); vitesse = 1; posX = posY = 0; } void draw() { background(255); for (int i = 0; i < largeur; i++) { for (int j = 0; j < hauteur; j++) { copy(img[tableau[i][j]], i * tailleCurseur, j * tailleCurseur, tailleCurseur, tailleCurseur, i * tailleCurseur, j * tailleCurseur, tailleCurseur, tailleCurseur); } } rect(x * tailleCurseur, y * tailleCurseur, tailleCurseur, tailleCurseur); } void keyPressed() { if (key == CODED) { if (keyCode == RIGHT) { if (x < largeur - 1) x++; } else if (keyCode == UP) { if (y > 0) y--; } else if (keyCode == DOWN) { if (y < hauteur - 1) y++; } else if (keyCode == LEFT) { if (x > 0) x--; } } if (keyCode == BACKSPACE) { // SI la touche enfoncee est l espace indexriot = 0; for (int i = 0; i < largeur; i++) { for (int j = 0; j < hauteur; j++) { tableau[i][j] = indexriot; } } x = y = 0; } if (keyCode == 32) { // SI la touche enfoncee est l espace, prendre l image suivante dans l index d images indexriot = (indexriot < nombreImages-1) ? indexriot = indexriot + 1 : 0; } tableau[x][y] = indexriot; } |