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. |
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Eksen değeri değiştiğinde otomatik olarak çağrılan, önceden tanımlanmış bir geri çağırma fonksiyonu. Fonksiyon, gerekli geri çağırma imzasıyla eşleşmelidir. Daha fazla bilgi için Geri Çağırma Fonksiyonları bölümüne bakın. |
Bu fonksiyon bir değer döndürmez.
Örnek
Geri çağırma fonksiyonunu main dışında tanımlayın.
Geri çağırma fonksiyonunu tanımlayın (
int main()dışında)// Play a sound when the left joystick moves void sounds() { Brain.playSound(siren); wait(1, seconds); }Geri çağrıyı main() fonksiyonunun içine kaydedin
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call the function when the left joystick moves Controller.Axis4.changed(sounds); }