Événements#
Introduction#
Un événement est un signal de démarrage pour un ensemble de blocs. Dans VEXcode, les blocs d’événements permettent à différents ensembles de blocs de démarrer à des moments différents. Par exemple, un ensemble de blocs peut démarrer au lancement du projet, et un autre lorsqu’un signal est envoyé depuis un autre endroit du projet.
quand le minuteur – Exécute une pile de blocs après que le minuteur dépasse un temps spécifié.
lors du démarrage – Exécute la pile de blocs attachée au démarrage du projet.
lorsque je reçois un événement – Exécute la pile de blocs attachée lorsqu’un événement spécifique est diffusé.
événement de diffusion – Déclenche un événement sans interrompre les autres blocs.
diffusion de l’événement et attente – Déclenche un événement et met en pause les autres blocs jusqu’à ce que les tâches de l’événement soient terminées.
lorsque la minuterie#
Le bloc chapeau when timer exécute la pile de blocs attachée après un laps de temps spécifié.
quand la minuterie est > à [1] secondes
Paramètres |
Description |
|---|---|
temps |
Spécifie le nombre de secondes avant le début de la pile de blocs associée. Accepte les nombres entiers et décimaux. |
Exemple
quand la minuterie est > à [2] secondes
[Move the 6-Axis Arm after 2 seconds.]
incrémenter la position du [bras v] de x :[100] y :[0] z :[0] [mm v] ▶
quand a commencé#
Le bloc when started lance l’exécution des blocs situés en dessous dès le démarrage du projet. Chaque projet nécessite au moins un bloc when started ; sans lui, les blocs suivants ne s’exécuteront pas. Plusieurs blocs when started peuvent être utilisés pour exécuter simultanément différents ensembles de blocs.
au démarrage
Paramètres |
Description |
|---|---|
Ce bloc ne comporte aucun paramètre. |
Exemple
au démarrage
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
incrémenter la position du [bras v] de x :[100] y :[0] z :[0] [mm v] ▶
Paramètres |
Description |
|---|---|
Ce bloc ne comporte aucun paramètre. |
lorsque je reçois un événement#
Le bloc chapeau lorsque je reçois l’événement commence à exécuter les blocs situés en dessous lorsqu’un signal portant le même nom d’événement est diffusé.
quand je reçois [my_event v]
Paramètres |
Description |
|---|---|
événement |
L’événement à déclencher. Les utilisateurs peuvent sélectionner un événement existant, en créer un nouveau, renommer l’événement sélectionné ou le supprimer. |
Exemple
au démarrage
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrémenter la position du [bras v] de x :[100] y :[0] z :[0] [mm v] ▶
diffuser [move_y v]
quand je reçois [move_y v]
afficher [Received!] sur la console ◀ et placer le curseur sur la ligne suivante
incrémenter la position du [bras v] de x :[0] y :[100] z :[0] [mm v] ▶
événement diffusé#
Le bloc de pile événement de diffusion envoie un signal qui lance tout bloc lorsque je reçois un événement portant le même nom d’événement. Les autres blocs du projet continuent de s’exécuter sans attendre la fin de ces blocs.
diffuser [message1 v]
Paramètres |
Description |
|---|---|
événement |
L’événement à déclencher. Les utilisateurs peuvent sélectionner un événement existant, en créer un nouveau, renommer l’événement sélectionné ou le supprimer. |
Exemple
au démarrage
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrémenter la position du [bras v] de x :[100] y :[0] z :[0] [mm v] ▶
diffuser [move_y v]
quand je reçois [move_y v]
afficher [Received!] sur la console ◀ et placer le curseur sur la ligne suivante
incrémenter la position du [bras v] de x :[0] y :[100] z :[0] [mm v] ▶
diffuser l’événement et attendre#
Le bloc de pile diffusion d’événement et attente envoie un signal qui lance tout bloc lorsque je reçois un événement portant le même nom d’événement. Le reste du projet attendra la fin de l’exécution de l’événement diffusé.
diffuser [message1 v] et attendre
Paramètres |
Description |
|---|---|
événement |
L’événement à déclencher. Les utilisateurs peuvent sélectionner un événement existant, en créer un nouveau, renommer l’événement sélectionné ou le supprimer. |
Exemple
au démarrage
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrémenter la position du [bras v] de x :[100] y :[0] z :[0] [mm v] ▶
diffuser [move_y v] et attendre
afficher [Finished moving!] sur la console ◀ et placer le curseur sur la ligne suivante
quand je reçois [move_y v]
afficher [Received!] sur la console ◀ et placer le curseur sur la ligne suivante
incrémenter la position du [bras v] de x :[0] y :[100] z :[0] [mm v] ▶