Olaylar#

giriiş#

Olay, bir blok kümesi için başlangıç ​​sinyalidir. VEXcode’daki olay blokları, farklı blok kümelerinin farklı zamanlarda başlamasına olanak tanır. Örneğin, bir blok kümesi proje başladığında başlayabilirken, bir diğeri projenin başka bir yerinden sinyal gönderildiğinde başlayabilir.

  • zamanlayıcı – Zamanlayıcı belirtilen süreyi aştığında bir blok yığını çalıştırır.

  • başlatıldığında – Proje başladığında ekli blok yığınını çalıştırır.

  • Olay alındığında – Belirli bir olay yayınlandığında ekli blok yığınını çalıştırır.

  • yayın olayı – Diğer blokları duraklatmadan bir olayı tetikler.

  • Olay yayınla ve bekle – Bir olayı tetikler ve olayın görevleri tamamlanana kadar diğer blokları duraklatır.

zamanlayıcı#

Zamanlayıcı şapka bloğu, belirtilen süre geçtikten sonra bağlı blok yığınını çalıştırır.

Zamanlayıcı şapka bloğu.#
zamanlayıcı > [1] saniye olduğunda

Parametreler

Tanım

zaman

Ekli blok yığınının başlamasından önce geçecek saniye sayısını belirtir. Hem tam hem de ondalık sayıları kabul eder.

Örnek

zamanlayıcı > [2] saniye olduğunda
[Move the 6-Axis Arm after 2 seconds.]
[kol v] kolunun konumunu x:[100] y:[0] z:[0] [mm v] kadar artır ▶

başladığında#

Başlatıldığında şapka bloğu, proje başladığında altındaki blokları çalıştırmaya başlar. Her projenin en az bir başlatıldığında bloğuna ihtiyacı vardır; bu blok olmadan altındaki bloklar çalışmaz. Farklı blok kümelerini aynı anda çalıştırmak için birden fazla başlatıldığında bloğu kullanılabilir.

Şapka bloğu ne zaman başladı?#
başladığında

Parametreler

Tanım

Bu bloğun parametresi yok.

Örnek

başladığında
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
[kol v] kolunun konumunu x:[100] y:[0] z:[0] [mm v] kadar artır ▶

Parametreler

Tanım

Bu bloğun parametresi yok.

Olayı aldığımda#

Olay aldığımda şapka bloğu, aynı olay adına sahip bir sinyal yayınlandığında altındaki blokları çalıştırmaya başlar.

Etkinlik şapka bloğunu aldığımda.#
[my_event v] aldığımda

Parametreler

Tanım

etkinlik

Tetiklenecek olay. Kullanıcılar mevcut bir olayı seçebilir, yeni bir olay oluşturabilir, seçilen olayı yeniden adlandırabilir veya silebilir.

Örnek

başladığında
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
[kol v] kolunun konumunu x:[100] y:[0] z:[0] [mm v] kadar artır ▶
[move_y v] yayınla

[move_y v] aldığımda
konsolda [Received!] yazdır ◀ ve imleci sonraki satıra taşı
[kol v] kolunun konumunu x:[0] y:[100] z:[0] [mm v] kadar artır ▶

yayın etkinliği#

Yayın olayı yığın bloğu, aynı olay adına sahip herhangi bir olay aldığımda bloğunu başlatan bir sinyal gönderir. Projedeki diğer bloklar, bu blokların bitmesini beklemeden çalışmaya devam eder.

Yayın olay yığını bloğu.#
[message1 v] yayınla

Parametreler

Tanım

etkinlik

Tetiklenecek olay. Kullanıcılar mevcut bir olayı seçebilir, yeni bir olay oluşturabilir, seçilen olayı yeniden adlandırabilir veya silebilir.

Örnek

başladığında
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
[kol v] kolunun konumunu x:[100] y:[0] z:[0] [mm v] kadar artır ▶
[move_y v] yayınla

[move_y v] aldığımda
konsolda [Received!] yazdır ◀ ve imleci sonraki satıra taşı
[kol v] kolunun konumunu x:[0] y:[100] z:[0] [mm v] kadar artır ▶

yayın etkinliği ve bekleme#

Yayın olayı ve bekleme yığın bloğu, aynı olay adına sahip herhangi bir olay aldığımda bloğunu başlatan bir sinyal gönderir. Projenin geri kalanı, yayınlanan olayın çalışmasının bitmesini bekleyecektir.

Yayın olayı ve bekleme yığını bloğu.#
[message1 v] yayınla ve bekle

Parametreler

Tanım

etkinlik

Tetiklenecek olay. Kullanıcılar mevcut bir olayı seçebilir, yeni bir olay oluşturabilir, seçilen olayı yeniden adlandırabilir veya silebilir.

Örnek

başladığında
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
[kol v] kolunun konumunu x:[100] y:[0] z:[0] [mm v] kadar artır ▶
[move_y v] yayınla ve bekle
konsolda [Finished moving!] yazdır ◀ ve imleci sonraki satıra taşı


[move_y v] aldığımda
konsolda [Received!] yazdır ◀ ve imleci sonraki satıra taşı
[kol v] kolunun konumunu x:[0] y:[100] z:[0] [mm v] kadar artır ▶