Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
wiki:tutoriels:processing:processing_8:processing_8 [2020/10/26 17:48] damien.muti |
wiki:tutoriels:processing:processing_8:processing_8 [2020/10/26 18:22] (Version actuelle) damien.muti [Comment gérer une application (sketch) "multi-touches" ?] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Comment gérer une application (sketch) " | ====== Comment gérer une application (sketch) " | ||
- | Par Damien MUTI - octobre | + | * Par Damien MUTI DESGROUAS |
+ | * Dernière mise à jour : 26/10/2020 | ||
+ | * Fichiers : | ||
+ | * {{ : | ||
+ | * {{ : | ||
Ligne 12: | Ligne 16: | ||
==== Programme 1 ==== | ==== Programme 1 ==== | ||
Le programme suivant permet de lancer un événement lorsque des (deux au minimum) sont simultanément appuyées. L' | Le programme suivant permet de lancer un événement lorsque des (deux au minimum) sont simultanément appuyées. L' | ||
+ | |||
+ | Chaque touche correspond à un code ascii. Le plus simple est de créer un tableau de booléen dont l' | ||
< | < | ||
boolean[] keys; | boolean[] keys; | ||
+ | int SPACE = 32; // Code ascci de la touche espace | ||
void setup() { | void setup() { | ||
- | keys = new boolean[512]; | + | keys = new boolean[512]; |
+ | // L'indice du tableau correspond au code ascii de la touche. | ||
} | } | ||
void draw() { | void draw() { | ||
- | if (keys[CONTROL] && keys[32]) { // CTRL + SPACE | + | |
+ | | ||
println(" | println(" | ||
} | } | ||
Ligne 25: | Ligne 34: | ||
void keyPressed() { | void keyPressed() { | ||
- | println(keyCode); | + | println(keyCode); |
- | keys[keyCode] = true; | + | keys[keyCode] = true; // mettre la valeur du tableau correspondant à l' |
} | } | ||
- | void keyReleased(){ | + | void keyReleased() { |
+ | // lorsque la touche est relâchée, mettre la valeur du tableau correspondant à l' | ||
keys[keyCode] = false; | keys[keyCode] = false; | ||
} | } | ||
- | /code> | + | |
+ | </ | ||
+ | |||
+ | Lien sur les codes ascii de chaque touches : | ||
+ | * [[https:// | ||
+ | |||
+ | ==== Programme 2 ==== | ||
+ | Le programme suivant permet de lancer un événement lorsque des (deux au minimum) sont simultanément appuyées. L' | ||
+ | |||
+ | Chaque touche correspond à un code ascii. Le plus simple est de créer un tableau de booléen dont l' | ||
+ | |||
+ | < | ||
+ | boolean[] keys; | ||
+ | int SPACE = 32; // Code ascci de la touche espace | ||
+ | void setup() { | ||
+ | keys = new boolean[512]; | ||
+ | // L' | ||
+ | } | ||
+ | void draw() { | ||
+ | // si les touches CTRL et SPACE sont appuyées, alors écrire "HELLO WORD" dans la console | ||
+ | if (keys[CONTROL] && keys[SPACE]) { // CTRL + SPACE | ||
+ | println(" | ||
+ | } | ||
+ | } | ||
+ | |||
+ | void keyPressed() { | ||
+ | println(keyCode); | ||
+ | // inverser la valeur du tableau correspondant à l' | ||
+ | keys[keyCode] = !keys[keyCode]; | ||
+ | } | ||
+ | |||
+ | |||
+ | </code> | ||
Ligne 38: | Ligne 80: | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
+ | * [[https:// |