Annonce

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


#1 2015-10-23 19:58:05 comparaison de couleur

moduloo
membre
Date d'inscription: 2015-10-15
Messages: 13

comparaison de couleur



Pour voir si un point est en collision avec une forme grise, je fais un get(x,y), et je compare la valeur avec le gris de la forme :

   
     color c = get(int(positionx), int(positiony));
    println(hex(c));
     if (hex(c)=="FF0A0A0A")
       {
          println(int(positionx)+" "+int(positiony)+" "+hex(c));
          vitessex = -vitessex;
           vitessey = -vitessey;
              positionx -=vitessex;
         positiony -=vitessey;
       }

Le premier println du code hexa marche bien dans la console, qui affiche FF0A0A0A quand le point passe sur la forme grise, mais rien ne se passe, le IF n'est jamais vrai...

Une idée du pourquoi ?

Hors ligne

 

#2 2015-10-23 20:15:21 Re : comparaison de couleur

Mushussu
membre
Lieu: Orléans
Date d'inscription: 2012-05-24
Messages: 802

Re: comparaison de couleur



Bonsoir,

Attention "FF0A0A0A" est chaîne de caractères, pour comparer des chaînes de caractères, il est préférable d'utiliser la méthode de comparaison de la classe String : equals()
https://processing.org/reference/String_equals_.html
Donc, tu devrais écrire :

if (hex(c).equals("FF0A0A0A")) {

Si tu souhaites plus de renseignement sur ton erreur :
http://thecodersbreakfast.net/index.php … es-en-java

Hors ligne

 

#3 2015-10-25 12:57:51 Re : comparaison de couleur

moduloo
membre
Date d'inscription: 2015-10-15
Messages: 13

Re: comparaison de couleur



ok cela marche parfaitement. Et merci pour l'approfondissement sur l'erreur.

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024