Näyttö#
Johdanto#
Näyttö-metodit ohjaavat sitä, miten VEX AIR -droonin ohjain näyttää tekstiä, numeroita, grafiikkaa ja kuvia näytöllään ja miten se reagoi näytön painalluksiin.
Alla on luettelo käytettävissä olevista menetelmistä:
Kohdistimen tulostus – Näytä tekstiä ja hallitse tulostuskohdistinta.
print– Tulostaa tekstiä, numeroita tai muuttujan arvoja kohdistimen nykyisestä sijainnista.set_cursor– Siirtää kohdistimen tiettyyn riviin ja sarakkeeseen.next_row– Siirtää kohdistimen seuraavan rivin sarakkeeseen 1.clear_row– Tyhjentää tekstirivin.get_row– Palauttaa rivin, jolle teksti tulostetaan.get_column– Palauttaa sarakkeen, johon teksti tulostetaan.
XY-tulostus – Tulosta teksti pikselipohjaisissa koordinaateissa.
print_at– Tulostaa tekstiä, numeroita tai muuttujan arvoja tietyssä x- ja y-koordinaatissa.set_origin– Asettaa koordinaatistopohjaisessa tulostuksessa ja piirtämisessä käytettävän lähtöpisteen.
Mutaattorit – Muuta näytön asetuksia, värejä ja piirtokäyttäytymistä.
clear_screen– Tyhjentää kaikki piirrokset, tekstin ja kuvat ohjaimen näytöltä.wait_for_render– Vaihtaa näytön piirron myöhemmin renderöitävään toimintaan.set_font– Asettaa tulostettavan tekstin fontin.set_pen_width– Asettaa piirrettyjen viivojen ja ääriviivojen paksuuden.set_pen_color– Asettaa tekstin, pikseleiden, viivojen ja ääriviivojen värin.set_text_fill_color– Asettaa tulostetun tekstin täyttövärin.set_fill_color– Asettaa piirrettyjen muotojen täyttövärin.
Piirrä – Lisää grafiikkaa ja kuvia näytölle.
draw_pixel– Piirtää yhden pikselin tiettyyn x- ja y-sijaintiin.draw_line– Piirtää viivan kahden pisteen välille.draw_rectangle– Piirtää suorakulmion käyttämällä nykyisiä kynän ja täyttövärejä.draw_circle– Piirtää ympyrän käyttämällä nykyistä kynää ja täyttövärejä.show_file– Piirtää ladatun kuvan.
Kosketus – Tunnistaa näytön painallukset ja reagoi niihin.
pressing– Palauttaa, painetaanko näyttöä parhaillaan.x_position– Palauttaa viimeisimmän näytön painalluksen x-koordinaatin.y_position– Palauttaa viimeisimmän näytön painalluksen y-koordinaatin.
Takaisinkutsutoiminnot – Suorittavat funktioita, kun näyttöä painetaan tai vapautetaan.
Kohdistimen tulostus#
print#
print tulostaa tekstiä, numeroita tai muuttujien arvoja ohjaimen näytölle nykyiseen kohdistimen sijaintiin ja fontti.
Usage:
controller.screen.print(text)
Parametrit |
Kuvaus |
|---|---|
|
Näytölle tulostettava teksti, numero tai muuttujan arvo. |
|
Valinnainen. Tulostetun tekstin erotinmerkki. Oletusarvoisesti |
|
Valinnainen. Merkkijono, joka liitetään viimeisen tulostetun tekstin jälkeen. Oletusarvoisesti |
|
Valinnainen. Desimaalien määrä, jonka liukuluku tulostaa kokonaislukuna. Oletusarvoisesti tarkkuus |
# Display a message at the starting cursor position.
controller.screen.print("Time to fly!")

# Display the first 2 decimals of pi
controller.screen.print(3.1415, precision = 2)

set_cursor#
set_cursor siirtää kohdistimen tiettyyn riviin ja sarakkeeseen ohjaimen näytöllä. Seuraava print -kutsu aloittaa tulostuksen tästä kohdasta. Rivi- ja sarakevälistys ottaa huomioon valitun fontin. Oletusarvoisella kiinteävälisellä keskikokoisella fontilla näyttö voi näyttää selkeästi jopa 18 riviä ja 53 saraketta. Tämän alueen ulkopuolelle sijoitettu teksti saattaa katketa tai olla vaikeampi lukea.
Usage:
controller.screen.set_cursor(row, col)
Parametrit |
Kuvaus |
|---|---|
|
Rivi, johon kohdistin siirretään. |
|
Sarake, johon kohdistin siirretään. |
# Display text starting at Row 7 Column 25.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print("Row 7, Column 25")

next_row#
next_row siirtää kohdistimen ohjainnäytön seuraavan rivin sarakkeeseen 1.
Usage:
controller.screen.next_row()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# Display two lines of text.
controller.screen.print("Line 1")
controller.screen.next_row()
controller.screen.print("Line 2")

clear_row#
clear_row tyhjentää tekstirivin ohjaimen näytöltä.
Usage:
controller.screen.clear_row(row, color)
Parametri |
Kuvaus |
|---|---|
|
Valinnainen. Tyhjennettävä rivi. Oletusarvo on nykyinen kohdistinrivi. |
|
Optional. The color to apply to the cleared row. If a color is not specified, the
|
# Clear only the second row of text
controller.screen.print("This text stays")
controller.screen.next_row()
controller.screen.print("This text disappears")
wait(3, SECONDS)
controller.screen.clear_row(2)
# Turn the 5th row green.
controller.screen.clear_row(5, GREEN)
get_row#
get_row palauttaa kokonaislukuna nykyisen rivin, jolle teksti tulostetaan.
Usage:
controller.screen.get_row()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# Display the cursor's current row.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print(controller.screen.get_row())

get_column#
get_column palauttaa kokonaislukuna nykyisen sarakkeen, johon teksti tulostetaan.
Usage:
controller.screen.get_column()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# Display the cursor's current column.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print(controller.screen.get_column())

XY-tulostus#
print_at#
print_at tulostaa tekstiä, numeroita tai muuttujan arvoja ohjaimen näytölle tiettyyn (x, y) sijaintiin pikseleinä käyttäen nykyisiä font ja origin -metodeja. x asettaa, kuinka kaukana vasemmasta reunasta teksti alkaa, ja y asettaa, missä kirjainten alaosa sijaitsee. Tämä metodi jättää huomiotta kohdistimen nykyisen sijainnin.
Usage:
controller.screen.print_at(text, x, y)
Parametri |
Kuvaus |
|---|---|
|
Näytölle tulostettava teksti, numero tai muuttujan arvo. |
|
Tekstin vaakasuora sijainti kokonaislukuna väliltä 0–640 pikseliä. 0 on vasen ja 640 oikea. |
|
Tekstin pystysuuntainen sijainti kokonaislukuna väliltä 0–480 pikseliä. 0 on yläreuna ja 480 alareuna. |
# Display a message in the middle of the screen.
controller.screen.print_at("Hello, drone!", x=320, y=240)

set_origin#
set_origin asettaa ohjaimen näytöllä piirtämisessä ja koordinaattipohjaisessa tulostuksessa käytettävän alkuperän (0, 0). Oletusarvoisesti alkuperä on näytön vasen yläkulma. Tämä metodi voi palauttaa alkuperän vaihtoehtoiseen (x, y) näytön koordinaattisijaintiin.
Usage:
controller.screen.set_origin(x, y)
Parametri |
Kuvaus |
|---|---|
|
Uusi x-koordinaatti, joka asetetaan lähtöpisteeksi, kokonaislukuna väliltä 0–640. |
|
Uusi y-koordinaatti, joka asetetaan origoksi, kokonaislukuna väliltä 0–480. |
# Set the origin to the center of the screen.
controller.screen.set_origin(x=320, y=240)
# Draw a rectangle at the new origin.
controller.screen.draw_rectangle(x=0, y=0, width=80, height=40)

Mutaattorit#
clear_screen#
clear_screen tyhjentää kaikki piirrokset, tekstin ja kuvat ohjaimen näytöltä.
Usage:
controller.screen.clear_screen(row, col, color)
Parametri |
Kuvaus |
|---|---|
|
Valinnainen. Rivi, jolle kohdistin siirretään näytön tyhjentämisen jälkeen. Oletusarvo on 1. |
|
Valinnainen. Sarake, johon kohdistin siirretään näytön tyhjentämisen jälkeen. Oletusarvo on 1. |
|
Optional. Sets the screen color. If
|
# Draw a circle, and clear it after 2 seconds.
controller.screen.draw_circle(x=320, y=240, radius=80)
wait(2, SECONDS)
controller.screen.clear_screen()
# Print two messages in the same spot
controller.screen.print("Hello!")
wait(3,SECONDS)
controller.screen.clear_screen(row=1, col=1)
controller.screen.print("Goodbye!")
# Set the background color of the screen to red.
controller.screen.clear_screen(color=RED)
wait_for_render#
wait_for_render vaihtaa näytön piirron renderöintiin myöhemmin. Kun tämä metodi on suoritettu, seuraavat näyttökomennot eivät näy ohjaimen näytöllä ennen kuin seuraava wait_for_render -metodi on suoritettu.
Huomautus: Käytä tätä ennen teksti-, muoto- tai kuvaryhmän piirtämistä ja käytä sitä sitten uudelleen renderöidäksesi koko päivityksen kerralla.
Usage:
controller.screen.wait_for_render()
Parametri |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# Display text and images when button 7 is pressed.
controller.screen.wait_for_render()
controller.screen.print("Screen rendered!")
controller.screen.draw_circle(x=320, y=240, radius=80)
while not controller.button7.pressing():
wait(5, MSEC)
controller.screen.wait_for_render()

set_font#
set_font asettaa fontin, jota käytetään tekstin näyttämiseen ohjaimen näytössä. Tätä fonttia käytetään kaikkeen tekstiin, joka tulostetaan tämän metodin suorittamisen jälkeen. Oletusfontti projektin alussa on MONO20.
Usage:
controller.screen.set_font(fontname)
Parametri |
Kuvaus |
|---|---|
|
Sets the font to one of the following:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
# Display text using a larger font.
controller.screen.set_font(MONO40)
controller.screen.print("VEX")

set_pen_width#
set_pen_width asettaa piirrettyjen viivojen ja ääriviivojen paksuuden.
Usage:
controller.screen.set_pen_width(width)
Parametri |
Kuvaus |
|---|---|
|
Kynän leveys, joka annetaan kokonaislukuna pikseleinä. |
# Draw a rectangle with a pen width of 10.
controller.screen.set_pen_width(10)
controller.screen.draw_rectangle(x=200, y=200, width=200, height=80)

set_pen_color#
set_pen_color asettaa tekstin, pikseleiden, viivojen ja ääriviivojen värin.
Usage:
controller.screen.set_pen_color(color)
Parametri |
Kuvaus |
|---|---|
|
Optional. Sets the pen and font color. Options include:
|
# Draw a rectangle with an orange outline.
controller.screen.set_pen_color(ORANGE)
controller.screen.draw_rectangle(x=200, y=150, width=240, height=150)
controller.screen.set_pen_color(WHITE)
controller.screen.print_at("VEXcode AIR", x=250, y=220)

set_text_fill_color#
set_text_fill_color asettaa tulostetun tekstin täyttövärin. Oletusarvoinen tekstin täyttöväri on läpinäkyvä.
Usage:
controller.screen.set_text_fill_color(color)
Parametri |
Kuvaus |
|---|---|
|
Valinnainen. Määrittää tekstin täyttövärin. Vaihtoehtoja ovat:
|
# Display two colors behind text
controller.screen.set_text_fill_color(RED)
controller.screen.print("Red")
controller.screen.next_row()
controller.screen.set_text_fill_color(BLUE)
controller.screen.print("Blue")

set_fill_color#
set_fill_color asettaa muotojen piirtämisessä käytettävän täyttövärin. Oletusarvoinen täyttöväri on musta.
Usage:
controller.screen.set_fill_color(color)
Parametri |
Kuvaus |
|---|---|
|
Valinnainen. Määrittää täyttövärin. Vaihtoehtoja ovat:
|
# Draw an orange-filled rectangle with text on top
controller.screen.set_fill_color(ORANGE)
controller.screen.draw_rectangle(x=200, y=150, width=250, height=150)
controller.screen.print_at("VEXcode AIR", x=250, y=220)

Piirrä#
draw_pixel#
draw_pixel piirtää yhden pikselin valittuun x- ja y-koordinaattiin käyttäen nykyistä kynän väriä.
Usage:
controller.screen.draw_pixel(x, y)
Parametri |
Kuvaus |
|---|---|
|
Pikselin piirrettävä x-koordinaatti kokonaislukuna 0–640. |
|
Y-koordinaatti, johon pikseli piirretään, kokonaislukuna 0–480. |
# Draw five pixels in a diagonal.
controller.screen.draw_pixel(x=360, y=200)
controller.screen.draw_pixel(x=340, y=220)
controller.screen.draw_pixel(x=320, y=240)
controller.screen.draw_pixel(x=300, y=260)
controller.screen.draw_pixel(x=280, y=280)
![]()
draw_line#
draw_line piirtää viivan ensimmäisestä näyttökoordinaatista (x1, y1) toiseen näyttökoordinaattiin (x2, y2) käyttäen nykyisiä kynän leveys ja kynän väri -arvoja.
X- ja y-koordinaatit käyttävät oletusarvoista origoa (0, 0), ellei eri origoa ole asetettu käyttämällä funktiota set_origin.
Usage:
controller.screen.draw_line(x1, y1, x2, y2)
Parametri |
Kuvaus |
|---|---|
|
Suoran aloitus-x-koordinaatti kokonaislukuna väliltä 0–640. |
|
Suoran aloitus-y-koordinaatti kokonaislukuna väliltä 0–480. |
|
Suoran päättymispisteen x-koordinaatti kokonaislukuna väliltä 0–640. |
|
Suoran päätepisteen y-koordinaatti kokonaislukuna väliltä 0–480. |
# Make an X across the screen.
controller.screen.draw_line(x1=0, y1=0, x2=640, y2=480)
controller.screen.set_pen_color(CYAN)
controller.screen.draw_line(x1=0, y1=480, x2=640, y2=0)

draw_rectangle#
draw_rectangle piirtää suorakulmion käyttämällä nykyisiä kynän leveys, kynän väri ja täyttöväri -parametreja, ellei valinnaista color -parametria käytetä.
X- ja y-koordinaatit käyttävät oletusarvoista origoa (0, 0), ellei eri origoa ole asetettu käyttämällä funktiota set_origin.
Usage:
controller.screen.draw_rectangle(x, y, width, height, color)
Parametri |
Kuvaus |
|---|---|
|
Suorakulmion vasemman yläkulman x-koordinaatti kokonaislukuna väliltä 0–640. |
|
Suorakulmion vasemman yläkulman y-koordinaatti kokonaislukuna väliltä 0–480. |
|
Suorakulmion leveys kokonaislukuna väliltä 0–640. |
|
Suorakulmion korkeus kokonaislukuna väliltä 0–480. |
|
Optional. Sets the fill color of the rectangle. Options include:
|
# Draw two rectangles on the screen.
controller.screen.draw_rectangle(x=0, y=0, width=620, height=460)
controller.screen.draw_rectangle(x=200, y=180, width=200, height=100, color=GREEN)

draw_circle#
draw_circle piirtää ympyrän käyttämällä nykyisiä kynän leveys, kynän väri ja täyttöväri -parametreja, ellei valinnaista color -parametria käytetä.
X- ja y-koordinaatit käyttävät oletusarvoista origoa (0, 0), ellei eri origoa ole asetettu käyttämällä funktiota set_origin.
Usage:
controller.screen.draw_circle(x, y, radius, color)
Parametri |
Kuvaus |
|---|---|
|
Ympyrän keskipisteen x-koordinaatti kokonaislukuna väliltä 0–640. |
|
Ympyrän keskipisteen y-koordinaatti kokonaislukuna väliltä 0–480. |
|
Ympyrän säde, joka on kokonaisluku väliltä 0–480 pikseliä. |
|
Optional. Sets the fill color of the circle. Options include:
|
# Draw one green circle on the screen.
controller.screen.set_fill_color(GREEN)
controller.screen.draw_circle(x=320, y=240, radius=200, color=GREEN)

show_file#
show_file piirtää mukautetun ladatun kuvan ohjaimen näytölle x- ja y-asentoon, ja siinä on valinnaiset skaalaus-, kierto- ja alfa-läpinäkyvyysasetukset.
Usage:
controller.screen.show_file(file, x, y, scale_width, scale_height, rotation, use_alpha)
Parametri |
Kuvaus |
|---|---|
|
Käyttäjän lataama kuva. Asetukset muuttuvat, jos kuvien nimiä muokataan ohjauspaneelissa. |
|
Kuvan vaakasuuntainen siirtymä, joka annetaan kokonaislukuna pikseleissä. Positiiviset arvot siirtävät kuvaa oikealle ja negatiiviset arvot vasemmalle. |
|
Kuvan pystysuora siirtymä pikseleissä kokonaislukuna. Positiiviset arvot siirtävät kuvaa alaspäin ja negatiiviset arvot ylöspäin. |
|
Valinnainen. Skaalattavan kuvan leveys, joka annetaan kokonaislukuna pikseleissä. |
|
Valinnainen. Kuvan korkeus, johon skaalataan, kokonaislukuna pikseleissä. |
|
Valinnainen. Kuvan kiertämisen astemäärä kokonaislukuna 0–359. |
|
Valinnainen. Käytetäänkö kuvan alfakanavaa läpinäkyvyyden lisäämiseen. Vaihtoehdot ovat: |
# Display uploaded Image 1 in the top left corner.
controller.screen.show_file(IMAGE1, x=0, y=0)
# Display uploaded Image 1 scaled to the full screen.
controller.screen.show_file(IMAGE1, x=65, y=0, scale_width=640, scale_height=480)
# Display uploaded Image 1 with rotation of 180 degrees.
controller.screen.show_file(IMAGE1, x=-65, y=0, rotation=180)
# Upload an image with a transparent background.
# Display uploaded Image 1 with alpha channel enabled.
controller.screen.show_file(IMAGE1, x=0, y=0, use_alpha=True)
Kosketa#
pressing#
pressing palauttaa totuusarvon, joka ilmaisee, painetaanko robotin näyttöä parhaillaan.
True– Näyttöä painetaan.False– Näyttöä ei paineta.
Usage:
controller.screen.pressing()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# Play a sound when the screen is pressed.
while True:
if controller.screen.pressing():
controller.sound.play_note("C5", 500)
wait(5, MSEC)
# Display different messages after the screen is pressed
while not controller.screen.pressing():
wait(5, MSEC)
controller.screen.print("First message!")
controller.screen.next_row()
# Lift finger to press the screen again
while controller.screen.pressing():
wait(5, MSEC)
while not controller.screen.pressing():
wait(5, MSEC)
controller.screen.print("Second message!")
controller.screen.next_row()
x_position#
x_position palauttaa x-koordinaatin pikseleinä kohdassa, jossa näyttöä viimeksi painettiin, kokonaislukuna väliltä 0 (vasen) - 640 (oikea).

Usage:
controller.screen.x_position()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# Play a high or low note based on where screen is pressed.
while True:
if controller.screen.pressing():
if controller.screen.x_position() > 320:
controller.sound.play_note("C6", 500)
else:
controller.sound.play_note("C4", 500)
wait(5, MSEC)
y_position#
y_position palauttaa y-koordinaatin pikseleinä kohdassa, jossa näyttöä viimeksi painettiin, kokonaislukuna väliltä 0 (ylhäällä) - 480 (alhaalla).

Usage:
controller.screen.y_position()
# Play a high or low note based on where screen is pressed.
while True:
if controller.screen.pressing():
if controller.screen.y_position() > 240:
controller.sound.play_note("C6", 500)
else:
controller.sound.play_note("C4", 500)
wait(5, MSEC)
Takaisinkutsut#
pressed#
pressed rekisteröi funktion, jota kutsutaan, kun ohjaimen näyttöä painetaan.
Usage:
controller.screen.pressed(callback, arg)
Parametrit |
Kuvaus |
|---|---|
|
Function, joka on aiemmin määritelty suoritettavaksi, kun ohjaimen näyttöä painetaan. |
|
Valinnainen. tuple, joka sisältää argumentteja, jotka välitetään takaisinkutsufunktiolle. Lisätietoja on kohdassa Funktioiden käyttö parametrien kanssa. |
# Play a sound when the screen is pressed.
def play_sound():
controller.sound.play_note("C5", 500)
controller.screen.pressed(play_sound)
released#
released rekisteröi funktion kutsuttavaksi, kun ohjaimen näyttö vapautetaan.
Usage:
controller.screen.released(callback, arg)
Parametrit |
Kuvaus |
|---|---|
|
Function, joka on aiemmin määritelty suoritettavaksi, kun ohjainnäyttö vapautetaan. |
|
Valinnainen. tuple, joka sisältää argumentteja, jotka välitetään takaisinkutsufunktiolle. Lisätietoja on kohdassa Funktioiden käyttö parametrien kanssa. |
# Play a sound when the screen is pressed.
def play_sound():
controller.sound.play_note("C5", 500)
controller.screen.released(play_sound)













