Scherm#

Invoering#

De scherminstellingen bepalen hoe de V5 Brain tekst, cijfers en afbeeldingen op het touchscreen weergeeft en hoe deze reageert op aanraakinvoer.

Standaard is het lettertype voor afdrukken naar de Brain monospaced small, met 12 rijen en 48 kolommen.

Voor tekenen heeft de Brain een resolutie van 480 x 240 pixels.

Het V5 Brain-scherm met rode rasterlijnen die de lay-out van 12 rijen en 48 kolommen in totaal weergeven. De pixelafmetingen zijn 479 breed bij 239 hoog. De linkerbovenhoek begint bij (0,0) pixels en rij 1, kolom 1, terwijl de rechteronderhoek eindigt bij (479, 239) pixels en rij 12, kolom 48.

Hieronder vindt u een lijst met alle methoden:

Cursor Print — Plaats en print tekst.

  • print — Drukt tekst, getallen of variabele waarden af ​​op de huidige cursorpositie.

  • set_cursor — Verplaatst de cursor naar een specifieke rij en kolom.

  • next_row — Verplaatst de cursor naar kolom 1 van de volgende rij.

  • clear_row — Maakt een rij tekst leeg.

  • row — Geeft de rij terug waar de tekst zal worden afgedrukt.

  • column — Geeft de kolom terug waar de tekst wordt afgedrukt.

  • print_at — Drukt tekst, getallen of variabele waarden af ​​op een specifieke x- en y-coördinaat.

  • get_string_width — Retourneert de breedte van een tekenreeks in pixels met behulp van het huidige lettertype.

  • get_string_height — Retourneert de hoogte van een tekenreeks in pixels met behulp van het huidige lettertype.

  • clear_line — Maakt een regel tekst leeg.

  • new_line — Verplaatst de cursor naar een nieuwe regel.

Mutators — Wijzig scherminstellingen, kleuren en tekengedrag.

  • clear_screen — Maakt het scherm leeg van alle tekeningen en tekst.

  • set_font — Stelt het lettertype in voor de afgedrukte tekst.

  • set_pen_width — Stelt de dikte in van getekende lijnen en vormcontouren.

  • set_pen_color — Stelt de kleur in van tekst, pixels, lijnen en vormcontouren.

  • set_fill_color — Stelt de vulkleur in voor getekende vormen en achtergronden van afgedrukte tekst.

  • set_origin — Stelt de oorsprong in die wordt gebruikt voor coördinatengebaseerd afdrukken en tekenen.

Tekenen — Voeg afbeeldingen toe aan het scherm.

  • draw_pixel — Tekent één pixel op een coördinaat.

  • draw_line — Tekent een lijn tussen twee punten.

  • draw_rectangle — Tekent een rechthoek.

  • draw_circle — Tekent een cirkel.

  • render — Werkt het scherm van de hersenen bij met tekst en tekeningen, maar alleen wanneer deze functie wordt aangeroepen.

  • set_clip_region — Beperkt waar tekeningen en tekst kunnen verschijnen.

Getters — Controleer de aanraakstatus en aanraakpositie.

  • pressingindrukt — Geeft aan of er op het scherm wordt gedrukt.

  • x_position — Geeft de x-coördinaat van de laatst aangeklikte schermtoets terug.

  • y_position — Geeft de y-coördinaat van de laatst aangeklikte knop op het scherm terug.

Callbacks — Reageren op aanraakgebeurtenissen op het scherm.

  • pressed — Registreert een functie die moet worden aangeroepen wanneer het scherm wordt ingedrukt.

  • released — Registreert een functie die moet worden aangeroepen wanneer het scherm wordt vrijgegeven.

Voor informatie over het construeren van een Brain om toegang te krijgen tot de screen methoden, zie Brain.

Cursor Print#

print#

print print tekst, getallen of variabele waarden op het Brain-scherm op de huidige cursorpositie en met het huidige lettertype.

Gebruik:

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

Parameters

Beschrijving

text

De tekst, het getal of de variabele waarde die moet worden afgedrukt.

sep

Optioneel. Een tekenreeks die tussen waarden moet worden ingevoegd. Deze moet worden geschreven als een sleutelwoordargument (sep=). De standaardwaarde is “”.

precision

Optioneel. Het aantal decimalen dat moet worden weergegeven bij het afdrukken van eenvoudige getallen. Dit moet worden opgegeven als een sleutelwoordargument (precision=). De standaardwaarde is 2.

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

Een screenshot van de V5 Brain waarop "Hello Robot" in witte tekst linksboven op het scherm te zien is.

set_cursor#

set_cursor verplaatst de cursor naar een specifieke rij en kolom op het Brain-scherm. De volgende print aanroep begint met afdrukken op die locatie. Hoeveel rijen en kolommen er comfortabel passen, hangt af van het geselecteerde lettertype. Met het standaard monospace medium lettertype kunnen maximaal 8 rijen en 13 kolommen duidelijk worden weergegeven. Tekst die buiten dit bereik wordt geplaatst, kan worden afgesneden of moeilijk leesbaar worden.

Monospaced lettertypen hebben tekens die allemaal dezelfde breedte hebben, waardoor de tekst consistent wordt geplaatst. Proportionele lettertypen daarentegen variëren in tekenbreedte, waardoor sommige letters meer ruimte innemen dan andere. Ongeacht welk type wordt gebruikt, positioneert set_cursor de cursor op basis van de rij- en kolomgrootte, niet op basis van de letterstijl. De lettergrootte kan worden aangepast met set_font.

Gebruik:

brain.screen.set_cursor(row, column)

Parameters

Beschrijving

row

De rij waarnaar de cursor moet worden verplaatst.

column

De kolom waarnaar de cursor moet worden verplaatst.

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

Een screenshot van de V5 Brain waarop rij 3, kolom 12 in het bovenste gedeelte, nabij het midden van het scherm, op die positie is afgedrukt.

next_row#

next_row verplaatst de cursor naar de volgende rij.

Gebruik:

brain.screen.next_row()

Parameters

Beschrijving

Deze methode heeft geen parameters.

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

Een screenshot van het V5 Brain-scherm met twee regels witte tekst in de linkerbovenhoek. De bovenste regel luidt 'Regel 1' en de tweede regel direct daaronder luidt 'Regel 2'.

clear_row#

clear_row wist één regel tekst op het Brain-scherm.

Gebruik:

brain.screen.clear_row(row, color)

Parameters

Beschrijving

row

Optioneel. De rij die moet worden gewist. Standaard is dit de huidige cursorrij.

color

Optioneel. Een geldige kleur, een hexadecimale waarde of een webstring.

# 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#

row geeft de rij aan waar de tekst als geheel getal wordt afgedrukt.

Gebruik:

brain.screen.row()

Parameters

Beschrijving

Deze methode heeft geen parameters.

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

Een screenshot van het V5 Brain-scherm waarop de tekst 3 in het wit te zien is in de linkerbovenhoek van het scherm, op de positie van rij 3, kolom 2.

column#

column geeft de kolom aan waar de tekst als geheel getal wordt afgedrukt.

Gebruik:

brain.screen.column()

Parameters

Beschrijving

Deze methode heeft geen parameters.

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

Een screenshot van het V5 Brain-scherm waarop de tekst 15 in het wit te zien is in de linkerbovenhoek van het scherm, op rij 3, kolom 15.

get_string_width#

get_string_width retourneert de breedte van een tekenreeks in pixels als een geheel getal, gebruikmakend van het huidige font.

Usage:
brain.screen.get_string_width(string)

Parameters

Beschrijving

string

Het touwtje om te meten.

get_string_height#

get_string_height retourneert de hoogte van een tekenreeks in pixels als een geheel getal, gebruikmakend van het huidige font.

Usage:
brain.screen.get_string_height(string)

Parameters

Beschrijving

string

Het touwtje om te meten.

clear_line#

clear_line wist de huidige tekstregel.

Usage: brain.screen.clear_line()

Parameters

Beschrijving

Deze methode heeft geen parameters.

new_line#

new_line verplaatst de cursor naar kolom 1 op de volgende regel van het Brain-scherm.

Gebruik:

brain.screen.new_line()

Parameters

Beschrijving

Deze methode heeft geen parameters.

Mutators#

clear_screen#

clear_screen wist alle tekeningen en tekst van het Brain-scherm.

Gebruik:

brain.screen.clear_screen(color)

Parameters

Beschrijving

color

Optioneel. Geldige kleuropties:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.BLACK (Standaard)
  • 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)

Een screenshot van het V5 Brain-scherm met het volledige afdrukbare gebied in felblauw.

set_font#

set_font stelt het lettertype in dat wordt gebruikt voor het weergeven van tekst op het Brain-scherm. Dit lettertype wordt toegepast op alle tekst die wordt afgedrukt nadat deze methode is uitgevoerd.

Gebruik:

brain.screen.set_font(font)

Parameters

Beschrijving

font

Hieronder vindt u een geldige lettertypeoptie.

Een screenshot van het V5 Brain-scherm met cijfers en letters in wit in de linkerbovenhoek in het lettertype MONO 12. Het toont AZ op één regel, over ongeveer een kwart van de schermbreedte. In de linkerbenedenhoek staat 80 kolommen en 20 rijen.
FontType.MONO12

Dezelfde afbeelding als de vorige, met het lettertype Mono 15. Het toont AZ op één regel, over bijna de helft van de schermbreedte. In de linkerbenedenhoek staat 68 kolommen en 16 rijen.
FontType.MONO15

Dezelfde afbeelding als de vorige, met het lettertype Mono 20. Het toont AZ op één regel, over bijna twee derde van de breedte van het scherm. In de linkerbenedenhoek staat 48 kolommen en 12 rijen.
FontType.MONO20

Dezelfde afbeelding als de vorige, met het lettertype Mono 30. Het toont AZ op één regel, over bijna de hele breedte van het scherm. In de linkerbenedenhoek staat 32 kolommen en 8 rijen.
FontType.MONO30

Dezelfde afbeelding als de vorige, met het lettertype Mono 40. Het toont AX op één regel, over de volledige breedte van het scherm. In de linkerbenedenhoek staat 24 kolommen en 6 rijen.
FontType.MONO40

Dezelfde afbeelding als de vorige, met het lettertype Mono 60. Het toont AP op één regel, over de volledige breedte van het scherm. Onderaan staat 16 kolommen en 4 rijen.
FontType.MONO60

Dezelfde afbeelding als de vorige, met het Prop 20-lettertype. Het toont AZ op één regel, over bijna twee derde van de breedte van het scherm. In de linkerbenedenhoek staat 48 kolommen en 12 rijen.
FontType.PROP20

Dezelfde afbeelding als de vorige, met het Prop 30-lettertype. Het toont AZ op één regel, die bijna de volledige breedte van het scherm beslaat. In de linkerbenedenhoek staat 32 kolommen en 8 rijen.
FontType.PROP30

Dezelfde afbeelding als de vorige, met het Prop 40-lettertype. Het toont AU op één regel, over de volledige breedte van het scherm. In de linkerbenedenhoek staat 24 kolommen en 6 rijen.
FontType.PROP40

Dezelfde afbeelding als de vorige, met het Prop 60-lettertype. Het toont AN op één regel, over de volledige breedte van het scherm. Onderaan staat 15 kolommen en 4 rijen.
FontType.PROP60

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

Een screenshot van het V5 Brain-scherm toont VEX in witte letters in de linkerbovenhoek, in een groter lettertype dan standaard.

set_pen_width#

set_pen_width stelt de dikte in van getekende lijnen en vormcontouren.

Gebruik:

brain.screen.set_pen_width(value)

Parameters

Beschrijving

value

De penbreedte, in pixels, van 0 tot 32.

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

Een screenshot van het V5 Brain-scherm waarop een rechthoek met dikke randen in de linkerbovenhoek van het scherm te zien is.

set_pen_color#

set_pen_color stelt de kleur in van tekst, pixels, lijnen en vormcontouren.

Gebruik:

brain.screen.set_pen_color(color)

Parameters

Beschrijving

color

De te gebruiken pen- en letterkleur. Opties zijn onder andere:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
U kunt ook een aangepaste kleur opgeven.

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

Een screenshot van het V5 Brain-scherm met een rechthoek in oranje in de linkerbovenhoek van het scherm.

set_fill_color#

set_fill_color stelt de vulkleur in die wordt gebruikt bij het tekenen van vormen.

Gebruik:

brain.screen.set_fill_color(color)

Parameters

Beschrijving

color

De opvulkleur die gebruikt moet worden. Opties zijn onder andere:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
U kunt ook een aangepaste kleur opgeven.

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

Een screenshot van het V5 Brain-scherm met een rechthoek gevuld met paars in het linkeronderkwadrant van het scherm.

set_origin#

set_origin stelt het oorsprongspunt in dat wordt gebruikt voor tekenen en coördinaatgebaseerd afdrukken op het Brain-scherm. Standaard is het oorsprongspunt de linkerbovenhoek van het scherm.

Gebruik:

brain.screen.set_origin(x, y)

Parameters

Beschrijving

x

De x-coördinaat die als oorsprong moet worden ingesteld, van 0 tot 479.

y

De y-coördinaat die als oorsprong moet worden ingesteld, ligt tussen 0 en 239.

Tekenen#

draw_pixel#

draw_pixel tekent één pixel op de geselecteerde x- en y-coördinaat met de huidige penkleur.

Gebruik:

brain.screen.draw_pixel(x, y)

Parameters

Beschrijving

x

De x-coördinaat om de pixel te tekenen, van 0 tot 479, ten opzichte van de oorsprong van het scherm.

y

De y-coördinaat om de pixel te tekenen, van 0 tot 239, ten opzichte van de oorsprong van het scherm.

# 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)

Een screenshot van het V5 Brain-scherm met een verzameling pixels die de hoeken van een vierkant in het midden van het scherm weergeven.

draw_line#

draw_line tekent een lijn van de eerste schermcoördinaat naar de tweede schermcoördinaat met de huidige pendikte en penkleur.

Gebruik:

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

Parameters

Beschrijving

start_x

De x-coördinaat in pixels van het begin van de lijn, van 0 tot 479, ten opzichte van de schermoorsprong.

start_y

De y-coördinaat in pixels van het begin van de lijn, van 0 tot 239, ten opzichte van de schermoorsprong.

end_x

De x-coördinaat in pixels van het einde van de lijn, van 0 tot 479, ten opzichte van de oorsprong van het scherm.

end_y

De y-coördinaat in pixels van het einde van de lijn, van 0 tot 239, ten opzichte van de oorsprong van het scherm.

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

Een screenshot van het V5 Brain-scherm toont een dunne diagonale lijn dwars door het midden, van de linkerbovenhoek naar de rechteronderhoek.

draw_rectangle#

draw_rectangle tekent een rechthoek met de huidige penbreedte, penkleur en vulkleur, tenzij de optionele parameter color wordt gebruikt.

Gebruik:

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

Parameters

Beschrijving

x

De x-coördinaat in pixels van de linkerbovenhoek van de rechthoek, van 0 tot 479.

y

De y-coördinaat in pixels van de linkerbovenhoek van de rechthoek, van 0 tot 239.

width

De breedte van de rechthoek.

height

De hoogte van de rechthoek.

color

Optioneel. Een geldige kleuroptie:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
U kunt ook een aangepaste kleur opgeven.

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

Een screenshot van het scherm van de V5 Brain toont een rechthoek met een dunne witte rand in de linkerbovenhoek.

draw_circle#

draw_circle tekent een cirkel met de huidige penbreedte, penkleur en vulkleur, tenzij de optionele parameter color wordt gebruikt.

Gebruik:

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

Parameters

Beschrijving

x

De x-coördinaat in pixels van het middelpunt van de cirkel, van 0 tot 479, ten opzichte van de schermoorsprong.

y

De y-coördinaat in pixels van het middelpunt van de cirkel, van 0 tot 239, ten opzichte van de oorsprong van het scherm.

radius

De straal van de cirkel, in pixels.

color

Optioneel. De opvulkleur die gebruikt moet worden. Opties zijn onder andere:

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
U kunt ook een aangepaste kleur opgeven.

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

Een screenshot van het V5 Brain-scherm toont een cirkel met een dunne witte rand in het midden.

render#

render maakt dubbele buffering mogelijk voor het scherm van de Brain. Zodra deze functie is aangeroepen, zullen tekenopdrachten (zoals tekst, vormen of afbeeldingen) niet langer direct zichtbaar zijn gedurende de rest van het project. Updates worden pas weergegeven wanneer render opnieuw wordt gebruikt. Dit zorgt voor vloeiendere en meer gecontroleerde schermupdates, maar betekent wel dat er niets zichtbaar zal zijn totdat render wordt gebruikt.

Gebruik:

brain.screen.render()

Parameters

Beschrijving

Deze methode heeft geen parameters.

# 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 definieert een rechthoekig gebied op het scherm waarbinnen alle tekeningen en tekst worden weergegeven. Inhoud buiten dit gebied wordt niet getoond.

Gebruik:

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

Parameters

Beschrijving

x

De x-positie van de linkerbovenhoek van de rechthoek, ten opzichte van de schermoorsprong.

y

De y-positie van de linkerbovenhoek van de rechthoek, ten opzichte van de schermoorsprong.

width

De breedte van de rechthoek.

height

De hoogte van de rechthoek.

# 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)

Een screenshot van het V5 Brain-scherm met witte tekst "Cut of" en een massief rood vierkant er direct onder, in de linkerbovenhoek van het scherm, dat laat zien wat er binnen het knipgebied wordt afgedrukt.

Aanraken#

pressing#

pressing retourneert een Booleaanse waarde die aangeeft of het Brain-scherm momenteel wordt ingedrukt.

  • True - Er wordt op het scherm gedrukt.

  • False - Er wordt niet op het scherm gedrukt.

Gebruik:

brain.screen.pressing()

Parameters

Beschrijving

Deze methode heeft geen parameters.

# 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 retourneert de x-coördinaat van de laatst aangeklikte knop op het scherm als een geheel getal van 0 (links) tot 479 (rechts).

Gebruik:

brain.screen.x_position()

Parameters

Beschrijving

Deze methode heeft geen parameters.

# 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 retourneert de y-coördinaat van de laatst aangeklikte knop op het scherm als een geheel getal van 0 (boven) tot 239 (onder).

Gebruik:

brain.screen.y_position()

Parameters

Beschrijving

Deze methode heeft geen parameters.

# 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)

Terugbelverzoeken#

pressed#

pressed registreert een functie die moet worden aangeroepen wanneer het scherm van de hersenen wordt ingedrukt.

Gebruik:

brain.screen.pressed(callback, arg)

Parameters

Beschrijving

callback

Een eerder gedefinieerde functie die wordt uitgevoerd wanneer op het Brain-scherm wordt gedrukt.

arg

Optioneel. Een tuple met argumenten die aan de callbackfunctie moeten worden doorgegeven. Zie Functies gebruiken met parameters voor meer informatie.

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

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

released#

released registreert een functie die moet worden aangeroepen wanneer het scherm wordt losgelaten (aanraking verwijderd).

Gebruik:

brain.screen.released(callback, arg)

Parameters

Beschrijving

callback

Een eerder gedefinieerde functie die wordt uitgevoerd wanneer het Brain-scherm wordt losgelaten.

arg

Optioneel. Een tuple met argumenten die aan de callbackfunctie moeten worden doorgegeven. Zie Functies gebruiken met parameters voor meer informatie.

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

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