Вісь#
Вступ#
Клас axis є похідним класом від класу controller. Він надає доступ до значень осей джойстика контролера та зворотних викликів зміни осей джойстика.
Доступ до об’єкта axis здійснюється через об’єкт controller Він не створюється безпосередньо.

Доступ#
Клас контролера controller надає такі об’єкти осей. Кожен об’єкт є екземпляром класу осі axis.
Об’єкт осі |
Приклад використання |
Опис |
|---|---|---|
|
|
Правий джойстик по горизонтальній осі. |
|
|
Вертикальна вісь правого джойстика. |
|
|
Вертикальна вісь лівого джойстика. |
|
|
Ліва горизонтальна вісь джойстика. |
Нотатки#
Перш ніж використовувати функцію-член
axis, створіть об’єктcontroller.positionповертає значення від-100до100.
// Create a controller object
controller Controller = controller();
Функції-члени#
Клас axis містить такі функції-члени:
Отримувач — Зчитує положення осі джойстика.
position— Повертає положення осі джойстика.
Зворотний виклик — Запускає функцію, коли положення джойстика змінюється вздовж осі.
changed— Виконує функцію, коли положення джойстика змінюється вздовж цієї осі.
Геттер#
position#
position повертає положення осі джойстика як значення від -100 до 100.
Доступна функція
int32_t position(percentUnits units = percentUnits::pct) const;
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Необов’язково. Одиниця вимірювання, яка використовується для повернутого значення осі. Значення за замовчуванням — |
Повернене значення
Повертає значення int32_t від -100 до 100.
100— Вісь джойстика повністю переміщена в позитивному напрямку.0— Вісь джойстика центрована.-100— Вісь джойстика повністю переміщена в негативному напрямку.
Приклад
// Turn with the left joystick
while (true) {
if (Controller.Axis4.position() > 10) {
Drivetrain.turn(right);
}
else if (Controller.Axis4.position() < -10) {
Drivetrain.turn(left);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Зворотний виклик#
changed#
changed запускає функцію, коли положення джойстика змінюється вздовж цієї осі.
Доступна функція
void changed(void (* callback)(void)) const;
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Функція, яка запускається щоразу, коли положення джойстика змінюється вздовж цієї осі. |
Повернене значення
Ця функція не повертає значення.
Приклад
Визначте функцію зворотного виклику поза межами main.
// Play a sound when the left joystick moves
void playSound() {
Brain.playSound(siren);
}
Зареєструйте зворотний виклик всередині main.
int main() {
vexcodeInit();
// Run playSound when the joystick's position changes along Axis4
Controller.Axis4.changed(playSound);
}