Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
How to declare and use an enumeration-like type on Processing
// Notre dictionnaire qui jouera le rôle d'énumération...
// Défini ici en tant que variable globale pour avoir la même "portée" qu'une énumération "classique"
IntDict monEnumeration;
void setup()
{
// On crée une instance du dictionnaire ...
monEnumeration = new IntDict();
//On ajoute nos entrées une par une (comme lors de la définition d'une énumération "classique")
monEnumeration.set("ROUGE", 0);
monEnumeration.set("BLEUE", 1);
monEnumeration.set("VERTE", 2);
}
void draw()
{
/* ... */
// * Traiter une variable à l'aide de conditions (SWITCH impossible car expression considérée non-constante)
// * Accéder une valeur grâce au nom de son entrée
if(maValeurATester == monEnumeration.get("ROUGE"))
{
/* ... */
}
else if(maValeurATester == monEnumeration.get("BLEUE"))
{
/* ... */
}
else if(maValeurATester == monEnumeration.get("VERTE"))
{
/* ... */
}
else
{
/* ... */
}
/* ... */
// * Retrouver le nom de l'entrée qui contient une valeur
println(monEnumeration.keyArray()[0]); // --> Affiche "ROUGE"
println(monEnumeration.keyArray()[1]); // --> Affiche "BLEUE"
println(monEnumeration.keyArray()[2]); // --> Affiche "VERTE"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.