Події#

Вступ#

Подія – це сигнал запуску набору блоків. Блоки подій у VEXcode дозволяють різним наборам блоків починати роботу в різний час. Наприклад, один набір блоків може запускатися на початку проекту, а інший – коли сигнал надсилається з іншого місця в проекті.

коли таймер#

Блок when timer запускає приєднаний стек блоків через заданий проміжок часу.

Блок капелюха таймера “коли”.#
коли таймер > [1] секунд

Параметри

Опис

час

Визначає кількість секунд перед початком роботи приєднаного стеку блоків. Приймає як цілі, так і десяткові числа.

Приклад

коли таймер > [2] секунд
[Move the 6-Axis Arm after 2 seconds.]
змістити позицію [рука v] на x:[100] y:[0] z:[0] [мм v] ▶

коли розпочато#

Блок when started запускає виконання блоків під ним, коли починається проєкт. Кожному проєкту потрібен принаймні один блок when started — без нього блоки під ним не працюватимуть. Кілька блоків when started можна використовувати для одночасного запуску різних наборів блоків.

Блок капелюха «Коли почався».#
коли запущено

Параметри

Опис

Цей блок не має параметрів.

Приклад

коли запущено
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
змістити позицію [рука v] на x:[100] y:[0] z:[0] [мм v] ▶

Параметри

Опис

Цей блок не має параметрів.

коли я отримую подію#

Блок коли я отримую подію запускає блоки нижче, коли сигнал з такою ж назвою події broadcast.

Блок події “Коли я отримую капелюх”.#
коли я отримую [my_event v]

Параметри

Опис

подія

Подія, яку потрібно ініціювати. Користувачі можуть вибрати існуючу подію, створити нову, перейменувати вибрану подію або видалити її.

Приклад

коли запущено
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
змістити позицію [рука v] на x:[100] y:[0] z:[0] [мм v] ▶
надіслати [move_y v]

коли я отримую [move_y v]
вивести [Received!] на консоль ◀ і перейти до наступного рядка
змістити позицію [рука v] на x:[0] y:[100] z:[0] [мм v] ▶

трансляція події#

Блок стеку трансляційної події надсилає сигнал, який запускає будь-який блок коли я отримую подію з такою ж назвою події. Решта блоків у проекті продовжують виконуватися, не чекаючи на завершення цих блоків.

Блок стека подій широкомовлення.#
надіслати [message1 v]

Параметри

Опис

подія

Подія, яку потрібно ініціювати. Користувачі можуть вибрати існуючу подію, створити нову, перейменувати вибрану подію або видалити її.

Приклад

коли запущено
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
змістити позицію [рука v] на x:[100] y:[0] z:[0] [мм v] ▶
надіслати [move_y v]

коли я отримую [move_y v]
вивести [Received!] на консоль ◀ і перейти до наступного рядка
змістити позицію [рука v] на x:[0] y:[100] z:[0] [мм v] ▶

трансляція події та очікування#

Блок стеку broadcast event та wait надсилає сигнал, який запускає будь-який блок when I receive event з такою ж назвою події. Решта проекту чекатиме на завершення виконання трансльованої події.

Блок події широкомовлення та стека очікування.#
надіслати [message1 v] і чекати

Параметри

Опис

подія

Подія, яку потрібно ініціювати. Користувачі можуть вибрати існуючу подію, створити нову, перейменувати вибрану подію або видалити її.

Приклад

коли запущено
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
змістити позицію [рука v] на x:[100] y:[0] z:[0] [мм v] ▶
надіслати [move_y v] і чекати
вивести [Finished moving!] на консоль ◀ і перейти до наступного рядка


коли я отримую [move_y v]
вивести [Received!] на консоль ◀ і перейти до наступного рядка
змістити позицію [рука v] на x:[0] y:[100] z:[0] [мм v] ▶