Eksen#
giriiş#
axis sınıfı, controller sınıfının türetilmiş bir sınıfıdır. Kontrolör joystick eksen değerlerine ve joystick eksen değiştirme geri çağırma işlevlerine erişim sağlar.
axis nesnesine controller nesnesi aracılığıyla erişilir. Doğrudan oluşturulmaz.

Erişim#
controller sınıfı aşağıdaki eksen nesnelerini sağlar. Her nesne axis sınıfının bir örneğidir.
Eksen Nesnesi |
Örnek Kullanım |
Tanım |
|---|---|---|
|
|
Sağ joystick yatay eksen. |
|
|
Sağ joystick dikey eksen. |
|
|
Sol joystick dikey eksen. |
|
|
Sol joystick yatay eksen. |
Notlar#
axisüye fonksiyonunu kullanmadan önce,controllernesnesi oluşturun.position-100ile100arasında bir değer döndürür.
// Create a controller object
controller Controller = controller();
Üye Fonksiyonları#
axis sınıfı aşağıdaki üye fonksiyonlarını içerir:
Getter — Joystick eksen konumunu oku.
position— Joystick ekseninin konumunu döndürür.
Geri Çağrı Fonksiyonu — Joystick’in bir eksen boyunca konumu değiştiğinde bir fonksiyonu çalıştırın.
changed— Joystick’in konumu o eksen boyunca değiştiğinde bir fonksiyon çalıştırır.
Getter#
position#
position joystick ekseninin konumunu -100 ile 100 arasında bir değer olarak döndürür.
Mevcut Fonksiyon
int32_t position(percentUnits units = percentUnits::pct) const;
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
İsteğe bağlı. Döndürülen eksen değeri için kullanılan birim. Varsayılan değer |
Dönüş Değeri
int32_t değerini -100 ile 100 arasında döndürür.
100— Joystick ekseni tamamen pozitif yönde hareket ettirildi.0— Joystick ekseni ortalanmış.-100— Joystick ekseni tamamen negatif yönde hareket ettirilmiştir.
Örnek
// 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);
}
Geri çağırmak#
changed#
changed kumanda kolunun o eksen boyunca konumu değiştiğinde bir fonksiyon çalıştırır.
Mevcut Fonksiyon
void changed(void (* callback)(void)) const;
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Joystick’in o eksen boyunca konumu her değiştiğinde çalıştırılacak bir fonksiyon. |
Dönüş Değeri
Bu fonksiyon bir değer döndürmez.
Örnek
Geri çağırma fonksiyonunu main dışında tanımlayın.
// Rumble when the left joystick moves
void controllerRumble() {
Controller.rumble(".");
}
Geri çağırma işlevini main içine kaydedin.
int main() {
vexcodeInit();
// Run controllerRumble when the joystick's position changes along Axis4
Controller.Axis4.changed(controllerRumble);
}