Trục#
Giới thiệu#
Lớp trục axis là một lớp dẫn xuất của lớp controller. Nó cung cấp quyền truy cập vào các giá trị trục cần điều khiển của Bộ điều khiển và các hàm gọi lại thay đổi trục cần điều khiển.
Một đối tượng trục axis được truy cập thông qua một đối tượng bộ điều khiển controller Nó không được tạo trực tiếp.

Truy cập#
Lớp điều khiển controller cung cấp các đối tượng trục sau. Mỗi đối tượng là một thể hiện của lớp trục axis.
Đối tượng trục |
Ví dụ sử dụng |
Sự miêu tả |
|---|---|---|
|
|
Trục ngang của cần điều khiển bên phải. |
|
|
Trục dọc của cần điều khiển bên phải. |
|
|
Trục dọc của cần điều khiển bên trái. |
|
|
Trục ngang của cần điều khiển bên trái. |
Ghi chú#
Trước khi sử dụng hàm thành viên trục
axis, hãy tạo đối tượng bộ điều khiểncontroller.Vị trí
positiontrả về giá trị từ-100đến100.
// Create a Controller object
controller Controller = controller();
Chức năng thành viên#
Lớp trục axis bao gồm các hàm thành viên sau:
Getter — Đọc vị trí trục cần điều khiển.
position— Trả về vị trí của trục cần điều khiển.
Hàm gọi lại — Thực thi một hàm khi vị trí của cần điều khiển thay đổi dọc theo một trục.
changed— Chạy một hàm khi vị trí của cần điều khiển thay đổi dọc theo trục đó.
Người nhận#
chức vụ#
position trả về vị trí của trục cần điều khiển dưới dạng giá trị từ -100 đến 100.
Chức năng khả dụng
int32_t position(percentUnits units = percentUnits::pct) const;
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Tùy chọn. Đơn vị được sử dụng cho giá trị trục trả về. Mặc định là |
Giá trị trả về
Trả về giá trị int32_t từ -100 đến 100.
100— Trục cần điều khiển được di chuyển hoàn toàn theo hướng dương.0— Trục cần điều khiển ở vị trí trung tâm.-100— Trục cần điều khiển được di chuyển hoàn toàn theo hướng âm.
Ví dụ
// 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);
}
Gọi lại#
đã thay đổi#
changed sẽ chạy một hàm khi vị trí của cần điều khiển thay đổi dọc theo trục đó.
Chức năng khả dụng
void changed(void (* callback)(void)) const;
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Một hàm sẽ được chạy mỗi khi vị trí của cần điều khiển thay đổi dọc theo trục đó. |
Giá trị trả về
Hàm này không trả về giá trị nào.
Ví dụ
Xác định hàm gọi lại bên ngoài main.
// Rumble when the left joystick moves
void controllerRumble() {
Controller.rumble(".");
}
Đăng ký hàm gọi lại bên trong main.
int main() {
vexcodeInit();
// Run controllerRumble when the joystick's position changes along Axis4
Controller.Axis4.changed(controllerRumble);
}