J'ai travaillé sur un programme en traitement qui compare deux images et me donne le pourcentage de correspondance. Je fais cela en utilisant une boucle for qui appelle un get() pour chaque pixel de l'image. Je dois trouver un moyen d'appeler une variable qui est initialisée à l'intérieur des boucles for en dehors des boucles. J'ai parcouru plusieurs sites Web qui ne semblent pas me donner de bonnes réponses, et je me demandais si c'était possible, et sinon, s'il y avait un moyen de contourner le problème. Voici mon code:Comment appeler une variable en dehors de sa portée
PImage fce1;
PImage fce2;
color f1;
color f2;
void setup(){
fullScreen();
background(#353535);
fce1 = loadImage("Face1.jpg");
fce2 = loadImage("Face2.jpg.png");
}
void draw(){
image(fce1, width/2 - 500, 200, 350, 500);
image(fce2, width/2 + 150, 200, 350, 500);
//line(width/2 - 150, height/2 - 250, width/2 + 150, height/2 - 250);
for(int i = height/2 - 250; i <= fce1.height + (height/2 - 250); i ++){
for(int x = width/2 - 500; x <= fce1.width + (width/2 - 500); x ++){
color vm1 = fce1.get(x, i);
this.f1 = vm1;
}
}
for(int i = height/2 - 250; i <= fce2.height + (height/2 - 250); i ++){
for(int x = width/2 + 150; x <= fce2.width + (width/2 + 150); x ++){
color vm2 = fce2.get(x, i);
this.f2 = vm2;
}
}
}
void mousePressed(){
if(mouseX >= 20 && mouseX <= 70 && mouseY >= 20 && mouseY <=70){
exit();
}
}
Je suis en train d'appeler la variable f1 en dehors de la boucle for(), puisque la boucle for() initialise. Merci d'avance!
Je ne suis pas sûr de ce que vous demandez. La variable 'f1' est définie en haut de votre croquis, vous pouvez donc l'utiliser où vous voulez. Notez également que la variable 'f1' ne conservera que la dernière valeur que vous lui donnez. –
Oh. Merci alors. Je vais essayer ça. –
... qu'est-ce que vous essayez? –