Processing
|
Explications générales : index.
Déclenchement d’une action unique par mouvement
Dans cet exemple, il y a un capteur branché sur la première entrée d’une carte "2 analogiques" ou d’une carte ZIP. La réception des données se fait grâce à la librairie RWMidi. Une fonction controllerChangeReceived() met à jour un tableau valeur[] dont la première case (valeur[0]) contient les données du capteur pyro.
Les données issues du capteur sont affichées dans la console. Les seuils choisis sont 59 et 66.
Les données sont comparées aux deux seuils avec > et < dans un if. Si la donnée est au-delà de ces seuils, c’est-à-dire inférieure à la valeur basse ou supérieure à la valeur haute, les variables compteur et onebang passent à 0. La variable compteur est utilisée ensuite pour lancer l’action à la condition qu’elle soit à 0. onebang, dont le nom est inspiré de l’objet Max, permet de gérer l’unicité de l’action. L’action n’est déclenchable que si onebang = 1, mais onebang prend la valeur 0 dès que cette action est déclenchée.
Le compteur sert à calculer un délai arbitraire après lequel la variable onebang est à nouveau à 1, c’est-à-dire que si le capteur bouge, une action sera déclenchable. Tant que onebang est à 0, les données du capteur ne sont pas prises en compte.