Képernyő#

Bevezetés#

A Screen metódusok szabályozzák, hogy a V5 Brain hogyan jelenít meg szöveget, számokat és grafikákat az érintőképernyőn, és hogyan reagál az érintéses bevitelre.

Alapértelmezés szerint a Brainbe nyomtatott betűtípus egyszeres szélességű, kicsi, amely 12 sorból és 48 oszlopból áll.

Rajzolás esetén az agy felbontása 480 x 240 pixel.

A V5 Brain képernyője piros rácsvonalakkal, amelyek összesen 12 sor és 48 oszlop elrendezését mutatják. A pixelméretek 479 szélesek és 239 magasak. A bal felső sarok (0,0) pixelnél és az 1. sor 1. oszlopánál kezdődik, míg a jobb alsó sarok (479, 239) pixelnél és a 12. sor 48. oszlopánál végződik.

Az alábbiakban felsoroljuk az összes módszert:

Kurzor nyomtatása – Szöveg elhelyezése és nyomtatása.

  • print — Szöveget, számokat vagy változóértékeket nyomtat ki az aktuális kurzorpozícióban.

  • set_cursor — A kurzort egy adott sorra és oszlopba mozgatja.

  • next_row — A kurzort a következő sor 1. oszlopába mozgatja.

  • clear_row — Töröl egy sornyi szöveget.

  • row — Visszaadja azt a sort, ahová a szöveg ki lesz nyomtatva.

  • column — Visszaadja azt az oszlopot, ahová a szöveg ki lesz nyomtatva.

  • print_at — Szöveget, számokat vagy változóértékeket nyomtat ki egy adott x és y koordinátán.

  • get_string_width — Visszaadja egy karakterlánc szélességét pixelben az aktuális betűtípus használatával.

  • get_string_height — Visszaadja egy karakterlánc magasságát pixelben az aktuális betűtípus használatával.

  • clear_line — Kitöröl egy sort a szövegből.

  • new_line — Új sorba mozgatja a kurzort.

Mutátorok – Képernyőbeállítások, színek és rajzolási viselkedés módosítása.

  • clear_screen — Törli a képernyőt az összes rajztól és szövegtől.

  • set_font — Beállítja a nyomtatott szöveg betűtípusát.

  • set_pen_width — Beállítja a rajzolt vonalak és alakzatok körvonalainak vastagságát.

  • set_pen_color — Beállítja a szöveg, a képpontok, a vonalak és az alakzatok körvonalainak színét.

  • set_fill_color — Beállítja a rajzolt alakzatok és a nyomtatott szöveg hátterének kitöltési színét.

  • set_origin — Beállítja a koordináta alapú nyomtatáshoz és rajzoláshoz használt origót.

Rajzolás – Grafikák hozzáadása a képernyőhöz.

  • draw_pixel — Egy pixelt rajzol egy koordinátán.

  • draw_line — Két pont között húz egy vonalat.

  • draw_rectangle — Téglalapot rajzol.

  • draw_circle — Kör rajzolása.

  • render — Csak szöveggel és rajzokkal frissíti az Agy képernyőjét, amikor meghívják.

  • set_clip_region — Korlátozza a rajzok és szövegek megjelenési helyét.

Getterek – Érintési állapot és érintési pozíció ellenőrzése.

  • pressing — Visszaadja, hogy a képernyőt megnyomják-e.

  • x_position — Visszaadja az utolsó képernyőleütés x koordinátáját.

  • y_position — Visszaadja az utolsó képernyőleütés y koordinátáját.

Visszahívások – Reagál a képernyőn megjelenő érintési eseményekre.

  • pressed — Regisztrál egy függvényt, amely a képernyő megnyomásakor hívódik meg.

  • released — Regisztrál egy függvényt, amely a képernyő elengedésekor hívódik meg.

A screen metódusok eléréséhez szükséges Brain létrehozásáról lásd: Brain.

Kurzor nyomtatása#

print#

print parancs szöveget, számokat vagy változó értékeket nyomtat ki a Brain képernyőjére az aktuális kurzorpozícióban és betűtípussal.

Használat:

brain.screen.print(text, sep, precision)

Paraméterek

Leírás

text

A kinyomtatandó szöveg, szám vagy változó értéke.

sep

Opcionális. Egy karakterlánc, amelyet az értékek közé kell beszúrni. Ezt kulcsszó argumentumként (sep=) kell megírni. Az alapértelmezett érték “”.

precision

Opcionális. Az egyszerű számok nyomtatásakor megjelenítendő tizedesjegyek száma. Ezt kulcsszó argumentumként kell megadni (precision=). Az alapértelmezett érték 2.

# Print on the Brain's screen
brain.screen.print("Hello, Robot!")

A V5 Brain képernyőképe, amelyen a képernyő bal felső sarkában fehér betűvel a "Hello Robot" felirat látható.

set_cursor#

set_cursor parancs a kurzort a Brain képernyő egy adott sorára és oszlopára mozgatja. A következő print hívás ezen a helyen kezdi meg a nyomtatást. A kényelmesen elférő sorok és oszlopok száma a kiválasztott betűtípustól függ. Az alapértelmezett, egysoros közepes betűtípussal akár 8 sor és 13 oszlop is megjeleníthető tisztán. Az ezen a tartományon túl elhelyezett szöveg lemaradhat, vagy nehezen olvashatóvá válhat.

Az egyszélességű betűtípusok azonos szélességű karaktereket használnak, így a szöveg elhelyezése egységes. Ezzel szemben az arányos betűtípusok karakterszélessége eltérő, így egyes betűk több helyet foglalnak el, mint mások. Azonban a használt típustól függetlenül set_cursor a kurzort a sor- és oszlopméret, nem pedig a betűstílus alapján pozicionálja. A betűméret a set_font segítségével állítható be.

Használat:

brain.screen.set_cursor(row, column)

Paraméterek

Leírás

row

A sor, ahová a kurzort át kell helyezni.

column

Az oszlop, amelyre a kurzort át kell helyezni.

# Display text starting at Row 3 Column 12
brain.screen.set_cursor(3, 12)
brain.screen.print("Row 3, Column 12")

A V5 Brain képernyőképe, amelyen a 3. sor 12. oszlopa látható a képernyő felső részén, a közepe közelében, abban a pozícióban.

next_row#

next_row A kurzort a következő sorra mozgatja.

Használat:

brain.screen.next_row()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Print two lines of text on the Brain's screen
brain.screen.print("Line 1")
brain.screen.next_row()
brain.screen.print("Line 2")

A V5 Brain képernyőjének képernyőképe, amelyen két sor fehér szöveg látható a bal felső sarokban. A felső sorban az 1. sor, a közvetlenül alatta lévő második sorban pedig a 2. sor látható.

clear_row#

clear_row parancs egyetlen sornyi szöveget töröl a Brain képernyőn.

Használat:

brain.screen.clear_row(row, color)

Paraméterek

Leírás

row

Opcionális. A törlendő sor. Az alapértelmezett érték az aktuális kurzorsor.

color

Opcionális. Érvényes color, hexadecimális érték vagy webes karakterlánc.

# Only keep the text on row 1
brain.screen.print("This text stays")
brain.screen.next_row
brain.screen.print("This text disappears")
wait(3, SECONDS)

brain.screen.clear_row()

row#

A row visszaadja azt a sort, ahová a szöveg egész számként kerül kiírásra.

Használat:

brain.screen.row()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Display the cursor's current row
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.row())

A V5 Brain képernyőjének képernyőképe, amelyen a 3-as szöveg fehér színnel látható a képernyő bal felső negyedében, a 3. sor 2. oszlopának pozíciójában.

column#

A column visszaadja azt az oszlopot, ahová a szöveg egész számként kerül kiírásra.

Használat:

brain.screen.column()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Display the cursor's current column
brain.screen.set_cursor(3, 15)
brain.screen.print(brain.screen.column())

A V5 Brain képernyőjének képernyőképe, amelyen a 15-ös szöveg fehér színnel látható a képernyő bal felső negyedében, a 3. sor 15. oszlopának pozíciójában.

get_string_width#

get_string_width Visszaadja egy karakterlánc szélességét pixelben, egész számként, az aktuális font használatával.

Usage:
brain.screen.get_string_width(string)

Paraméterek

Leírás

string

A mérendő húr.

get_string_height#

get_string_height Visszaadja egy karakterlánc magasságát pixelben egész számként, az aktuális font használatával.

Usage:
brain.screen.get_string_height(string)

Paraméterek

Leírás

string

A mérendő húr.

clear_line#

clear_line parancs törli az aktuális szövegsort.

Usage: brain.screen.clear_line()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

new_line#

new_line parancs a kurzort a Brain képernyő következő sorának 1. oszlopába helyezi.

Használat:

brain.screen.new_line()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

Mutátorok#

clear_screen#

clear_screen parancs törli az összes rajzot és szöveget a Brain képernyőjéről.

Használat:

brain.screen.clear_screen(color)

Paraméterek

Leírás

color

Opcionális. Érvényes színbeállítás:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.BLACK (Alapértelmezett)
  • Color.WHITE

# Print VEXcode on the screen
brain.screen.print("VEXcode")
wait(2, SECONDS)
# Clear screen to black
brain.screen.clear_screen()

# Print VEXcode on the screen
brain.screen.print("VEXcode")

# Clear screen to blue using predefined color
brain.screen.clear_screen(Color.BLUE)

A V5 Brain képernyőjének képernyőképe, amelyen a teljes nyomtatható terület élénkkék.

set_font#

set_font beállítja a Brain képernyőn megjelenő szöveg betűtípusát. Ez a betűtípus lesz érvényes az összes kinyomtatott szövegre a metódus futtatása után.

Használat:

brain.screen.set_font(font)

Paraméterek

Leírás

font

Érvényes betűtípus-beállítás alább.

A V5 Brain képernyőjének képernyőképe, a bal felső sarokban MONO 12 betűtípussal, fehér színnel nyomtatott számokkal és betűkkel. Az AZ betűket egy sorban mutatja, a képernyő szélességének körülbelül negyedén. A bal alsó sarokban 80 oszlop és 20 sor látható.
FontType.MONO12

Ugyanaz a kép, mint az előző, Mono 15 betűtípussal. Egy sorban, a képernyő majdnem felén mutatja az AZ betűket. A bal alsó sarokban 68 oszlop és 16 sor látható.
FontType.MONO15

Ugyanaz a kép, mint az előző, Mono 20 betűtípussal. Egy sorban, a képernyő szélességének közel kétharmadán mutatja az AZ betűket. A bal alsó sarokban 48 oszlop és 12 sor látható.
FontType.MONO20

Ugyanaz a kép, mint az előző, Mono 30 betűtípussal. Egy sorban, az A-tól Z-ig terjedő betűtípus látható, szinte a képernyő teljes szélességében. A bal alsó sarokban 32 oszlop és 8 sor látható.
FontType.MONO30

Ugyanaz a kép, mint az előző, Mono 40 betűtípussal. Egy sorban mutatja az AX karakterláncot, amely a képernyő teljes szélességét kitölti. A bal alsó sarokban 24 oszlop és 6 sor látható.
FontType.MONO40

Ugyanaz a kép, mint az előző, Mono 60 betűtípussal. Egy sorban mutatja az AP-t, a képernyő teljes szélességében. Alul 16 oszlopot és 4 sort olvashatunk.
FontType.MONO60

Ugyanaz a kép, mint az előző, Prop 20 betűtípussal. Egy sorban, a képernyő szélességének közel kétharmadán mutatja az AZ betűrendet. A bal alsó sarokban 48 oszlop és 12 sor látható.
FontType.PROP20

Ugyanaz a kép, mint az előző, csak Prop 30 betűtípussal. Egy sorban mutatja az A-t, majdnem a képernyő szélességét kitöltve. A bal alsó sarokban 32 oszlop és 8 sor látható.
FontType.PROP30

Ugyanaz a kép, mint az előző, csak Prop 40 betűtípussal. Az AU-t egy sorban mutatja, a képernyő teljes szélességében. A bal alsó sarokban 24 oszlop és 6 sor látható.
FontType.PROP40

Ugyanaz a kép, mint az előző, Prop 60 betűtípussal. Egy sorban mutatja az AN-t, a képernyő szélességét átfogva. Alul 15 oszlopot és 4 sort olvashatunk.
FontType.PROP60

# Set the font type to MONO40
brain.screen.set_font(FontType.MONO40)
brain.screen.print("VEX")

A V5 Brain képernyőjének képernyőképén a bal felső sarokban fehér színnel, az alapértelmezettnél nagyobb betűtípussal olvasható a VEX felirat.

set_pen_width#

set_pen_width beállítja a rajzolt vonalak és alakzatok körvonalainak vastagságát.

Használat:

brain.screen.set_pen_width(value)

Paraméterek

Leírás

value

A toll szélessége pixelben, 0 és 32 között.

# Draw a rectangle with a pen width of 10
brain.screen.set_pen_width(10)
brain.screen.draw_rectangle(50, 50, 130, 60)

A V5 Brain képernyőjének képernyőképe, amelyen egy vastag szegéllyel ellátott téglalap látható a képernyő bal felső negyedében.

set_pen_color#

set_pen_color beállítja a szöveg, a képpontok, a vonalak és az alakzatok körvonalainak színét.

Használat:

brain.screen.set_pen_color(color)

Paraméterek

Leírás

color

The pen and font color to use. Options include:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
You can also specify a custom color.

# Draw a rectangle with orange borders
brain.screen.set_pen_color(Color.ORANGE)
brain.screen.draw_rectangle(50, 50, 130, 60)

A V5 Brain képernyőjének képernyőképe, amelyen egy narancssárgával rajzolt téglalap látható a képernyő bal felső negyedében.

set_fill_color#

set_fill_color beállítja az alakzatok rajzolásakor használt kitöltőszínt.

Használat:

brain.screen.set_fill_color(color)

Paraméterek

Leírás

color

The fill color to use. Options include:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
You can also specify a custom color.

# Draw a purple rectangle
brain.screen.set_fill_color(Color.PURPLE)
brain.screen.draw_rectangle(50, 130, 100, 60)

A V5 Brain képernyőjének képernyőképe, amelyen egy lilával kitöltött téglalap látható a képernyő bal alsó negyedében.

set_origin#

set_origin beállítja a rajzoláshoz és koordináta alapú nyomtatáshoz használt origót a Brain képernyőn. Alapértelmezés szerint az origó a képernyő bal felső sarka.

Használat:

brain.screen.set_origin(x, y)

Paraméterek

Leírás

x

Az origóként beállítandó x koordináta, 0 és 479 között.

y

Az origóként beállítandó y koordináta 0 és 239 között.

Döntetlen#

draw_pixel#

draw_pixel Egy pixelt rajzol a kiválasztott x és y koordinátán az aktuális tollszínnel.

Használat:

brain.screen.draw_pixel(x, y)

Paraméterek

Leírás

x

A képpont kirajzolásához szükséges x koordináta 0-tól 479-ig, a képernyő origójához viszonyítva.

y

A képpont y koordinátája 0-tól 239-ig, a képernyő origójához viszonyítva.

# Draw the pixels marking the corners of a square
brain.screen.draw_pixel(250, 100)
brain.screen.draw_pixel(275, 100)
brain.screen.draw_pixel(250, 125)
brain.screen.draw_pixel(275, 125)

A V5 Brain képernyőjének képernyőképe, amelyen a képernyő közepéhez közeli négyzet sarkait ábrázoló képpontok gyűjteménye látható.

draw_line#

draw_line A függvény egy vonalat rajzol az első képernyő-koordinátától a második képernyő-koordinátáig az aktuális tollszélesség és tollszín használatával.

Használat:

brain.screen.draw_line(start_x, start_y, end_x, end_y)

Paraméterek

Leírás

start_x

A sor kezdetének x koordinátája pixelben, 0-tól 479-ig, a képernyő origójához viszonyítva.

start_y

A vonal kezdetének y koordinátája pixelekben, 0-tól 239-ig, a képernyő origójához viszonyítva.

end_x

A sor végének x koordinátája pixelben, 0-tól 479-ig, a képernyő origójához viszonyítva.

end_y

A vonal végének y koordinátája pixelekben, 0-tól 239-ig, a képernyő origójához viszonyítva.

# Draw a line from the top left to bottom right of the screen
brain.screen.draw_line(0, 0, 479, 239)

A V5 Brain képernyőjének képernyőképén egy vékony átlós vonal látható a középpontban, a bal felső saroktól a jobb alsó sarokig.

draw_rectangle#

draw_rectangle függvény téglalapot rajzol az aktuális tollszélességgel, tollszínnel és kitöltőszínnel, kivéve, ha az opcionális color paramétert használjuk.

Használat:

brain.screen.draw_rectangle(x, y, width, height, color)

Paraméterek

Leírás

x

A téglalap bal felső sarkának x koordinátája pixelben 0 és 479 között.

y

A téglalap bal felső sarkának y koordinátája pixelben 0-tól 239-ig.

width

A téglalap szélessége.

height

A téglalap magassága.

color

Optional. A valid color option:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
You can also specify a custom color.

# Draw a rectangle on the screen
brain.screen.draw_rectangle(50, 50, 130, 60)

A V5 Brain képernyőjének képernyőképén egy téglalap látható, amelynek bal felső negyedében vékony fehér szegély látható.

draw_circle#

draw_circle A függvény egy kört rajzol az aktuális tollszélességgel, tollszínnel és kitöltőszínnel, kivéve, ha az opcionális color paramétert használjuk.

Használat:

brain.screen.draw_circle(x, y, radius, color)

Paraméterek

Leírás

x

A kör középpontjának x koordinátája pixelekben, 0-tól 479-ig, a képernyő origójához viszonyítva.

y

A kör középpontjának y koordinátája pixelekben, 0-tól 239-ig, a képernyő origójához viszonyítva.

radius

A kör sugara, pixelben.

color

Optional. The fill color to use. Options include:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
You can also specify a custom color.

# Draw a circle on the screen
brain.screen.draw_circle(120, 120, 40)

A V5 Brain képernyőjének képernyőképén egy kör látható, amelynek közepén vékony fehér szegély van rajzolva.

render#

render dupla pufferelést engedélyez az Agy képernyőjén. Hívás után a rajzolási parancsok (például szöveg, alakzatok vagy képek) nem jelennek meg azonnal a projekt többi részében. Ehelyett a frissítések csak akkor jelennek meg, ha render at újra használjuk. Ez simább és kontrolláltabb képernyőfrissítéseket tesz lehetővé, de azt jelenti, hogy semmi sem lesz látható, amíg render nem használjuk.

Használat:

brain.screen.render()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Render text after moving
brain.screen.render()
brain.screen.print("Render later...")
drivetrain.drive_for(FORWARD, 100, MM)
drivetrain.turn_for(RIGHT, 90, DEGREES)
brain.screen.render()

set_clip_region#

set_clip_region egy téglalap alakú területet határoz meg a képernyőn, ahová az összes rajz és szöveg be lesz zárva. Az ezen a területen kívüli tartalom nem jelenik meg.

Használat:

brain.screen.set_clip_region(x, y, width, height)

Paraméterek

Leírás

x

A téglalap bal felső sarkának x pozíciója, a képernyő origójához viszonyítva.

y

A téglalap bal felső sarkának y pozíciója a képernyő origójához viszonyítva.

width

A téglalap szélessége.

height

A téglalap magassága.

# Restrict text and drawings to a specific region
brain.screen.set_clip_region(0, 0, 120, 120)
brain.screen.draw_rectangle(60, 60, 100, 100, Color.RED)
brain.screen.print_at("Cut off!", x=60, y=60)

A V5 Brain képernyőjének képernyőképe, amelyen fehér „Kivágás” felirat látható, alatta pedig egy tömör piros négyzet látható, a képernyő bal felső negyedében, amely a klipterületen belüli nyomtatási tartalmat mutatja.

Érintés#

pressing#

pressing megnyomása közötti logikai érték egy logikai értéket ad vissza, amely jelzi, hogy a Brain képernyő van-e jelenleg lenyomva.

  • True - A képernyőt megnyomják.

  • False - A képernyőt nem nyomják meg.

Használat:

brain.screen.pressing()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Change the screen's color after it's pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.set_fill_color(Color.GREEN)
brain.screen.draw_rectangle(0, 0, 479, 239)

# Display different messages after the screen is pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.print("First message!")
brain.screen.next_row()
# Lift finger to press the screen again
while brain.screen.pressing():
    wait(5, MSEC)
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.print("Second message!")
brain.screen.next_row()

x_position#

x_position Az utolsó képernyőleütés x koordinátáját adja vissza 0-tól (balra) 479-ig (jobbra) terjedő egész számként.

Használat:

brain.screen.x_position()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Display a circle where the screen is pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.set_fill_color(Color.WHITE)
brain.screen.draw_circle(brain.screen.x_position(), brain.screen.y_position(), 20)

y_position#

y_position Visszaadja az utolsó képernyőnyomás y koordinátáját 0-tól (felül) 239-ig (alul) terjedő egész számként.

Használat:

brain.screen.y_position()

Paraméterek

Leírás

Ennek a metódusnak nincsenek paraméterei.

# Display a circle where the screen is pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.set_fill_color(Color.WHITE)
brain.screen.draw_circle(brain.screen.x_position(), brain.screen.y_position(), 20)

Visszahívások#

pressed#

pressed regisztrál egy függvényt, amely akkor hívódik meg, amikor az Agy Képernyőjét megnyomják.

Használat:

brain.screen.pressed(callback, arg)

Paraméterek

Leírás

callback

Egy korábban definiált függvény, amely a Brain képernyő megnyomásakor végrehajtódik.

arg

Opcionális. Egy tuple, amely argumentumokat tartalmaz a visszahívó függvénynek átadandó. További információkért lásd a Függvények használata paraméterekkel részt.

def my_function():
  brain.screen.print("Screen pressed")

# Call my_function whenever the Brain screen is pressed
brain.screen.pressed(my_function)

released#

released egy függvényt regisztrál, amely akkor hívódik meg, amikor a képernyőt elengedik (az érintést eltávolítják).

Használat:

brain.screen.released(callback, arg)

Paraméterek

Leírás

callback

Egy korábban definiált függvény, amely a Brain képernyő elengedésekor hajtódik végre.

arg

Opcionális. Egy tuple, amely argumentumokat tartalmaz a visszahívó függvénynek átadandó. További információkért lásd a Függvények használata paraméterekkel részt.

def my_function():
  brain.screen.print("Screen released")

# Call my_function whenever the Brain screen is released
brain.screen.released(my_function)