Bildschirm#

Einführung#

Die Bildschirmmethoden steuern, wie der VEX AIR Drohnencontroller Text, Zahlen, Grafiken und Bilder auf seinem Bildschirm anzeigt und wie er auf Berührungen des Bildschirms reagiert.

Nachfolgend finden Sie eine Liste der verfügbaren Methoden:

Druckcursor – Text anzeigen und Druckcursor verwalten.

  • print – Gibt Text, Zahlen oder Variablenwerte an der aktuellen Cursorposition aus.

  • set_cursor – Verschiebt den Cursor in eine bestimmte Zeile und Spalte.

  • next_row – Bewegt den Cursor in Spalte 1 der nächsten Zeile.

  • clear_row – Löscht eine Textzeile.

  • get_row – Gibt die Zeile zurück, in der der Text ausgegeben werden soll.

  • get_column – Gibt die Spalte zurück, in der der Text ausgegeben werden soll.

XY-Druck – Text an pixelbasierten Koordinaten drucken.

  • print_at – Gibt Text, Zahlen oder Variablenwerte an einer bestimmten x- und y-Koordinate aus.

  • set_origin – Legt den Ursprung fest, der für koordinatenbasiertes Drucken und Zeichnen verwendet wird.

Mutatoren – Ändern Sie Bildschirmeinstellungen, Farben und das Zeichenverhalten.

  • clear_screen – Löscht alle Zeichnungen, Texte und Bilder vom Controller-Bildschirm.

  • wait_for_render – Schaltet die Bildschirmzeichnung auf das Verhalten “später rendern” um.

  • set_font – Legt die Schriftart für gedruckten Text fest.

  • set_pen_width – Legt die Dicke der gezeichneten Linien und Formumrisse fest.

  • set_pen_color – Legt die Farbe von Text, Pixeln, Linien und Formumrissen fest.

  • set_text_fill_color – Legt die Füllfarbe hinter dem gedruckten Text fest.

  • set_fill_color – Legt die Füllfarbe für gezeichnete Formen fest.

Zeichnen – Grafiken und Bilder auf dem Bildschirm hinzufügen.

  • draw_pixel – Zeichnet ein Pixel an einer bestimmten x- und y-Position.

  • draw_line – Zeichnet eine Linie zwischen zwei Punkten.

  • draw_rectangle – Zeichnet ein Rechteck mit den aktuellen Stift- und Füllfarben.

  • draw_circle – Zeichnet einen Kreis mit dem aktuellen Stift und der aktuellen Füllfarbe.

  • show_file – Zeichnet ein hochgeladenes Bild.

Touch – Bildschirmberührungen erkennen und darauf reagieren.

  • pressing – Gibt zurück, ob der Bildschirm gerade gedrückt wird.

  • x_position – Gibt die x-Koordinate des letzten Bildschirmdrucks zurück.

  • y_position – Gibt die y-Koordinate des letzten Bildschirmdrucks zurück.

Callbacks – Funktionen, die beim Drücken oder Loslassen des Bildschirms ausgeführt werden.

  • pressed – Registriert eine Funktion, die beim Drücken des Bildschirms aufgerufen wird.

  • released – Registriert eine Funktion, die aufgerufen wird, wenn der Bildschirm losgelassen wird.

Cursor Drucken#

print#

print gibt Text, Zahlen oder Variablenwerte auf dem Controller-Bildschirm an der aktuellen Cursorposition und Schriftart aus.

Usage:
controller.screen.print(text)

Parameter

Beschreibung

text

Der Text, die Zahl oder der Variablenwert, der auf dem Bildschirm ausgegeben werden soll.

sep

Optional. Das Trennzeichen zwischen gedrucktem Text. Standardmäßig entspricht sep = ’ ‘

end

Optional. Die Zeichenkette, die nach dem zuletzt gedruckten Text angehängt wird. Standardmäßig entspricht end = ‘\n’

precision

Optional. Die Anzahl der Dezimalstellen, mit denen eine Gleitkommazahl als ganze Zahl ausgegeben wird. Standardmäßig entspricht precision = 5 Dezimalstellen.

# Display a message at the starting cursor position.
controller.screen.print("Time to fly!")

Ein Screenshot des VEX AIR Drohnen-Controller-Bildschirms mit weißem Text in der oberen linken Ecke, der "Zeit zum Fliegen!" anzeigt

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

Derselbe Screenshot wie der vorherige, mit dem Text 3.14 in der oberen linken Ecke.

set_cursor#

set_cursor moves the cursor to a specific row and column on the controller screen. The next print call will start printing at that location. The row and column spacing will take into account the selected font. With the default monospaced medium font, the screen can clearly display up to 18 rows and 53 columns. Text placed beyond this range may be cut off or harder to read.

Usage:
controller.screen.set_cursor(row, col)

Parameter

Beschreibung

row

Die Zeile, in die der Cursor bewegt werden soll.

column

Die Spalte, in die der Cursor bewegt werden soll.

# Display text starting at Row 7 Column 25.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print("Row 7, Column 25")

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit weißem Text in der Nähe der Mitte, der an dieser Bildschirmposition „Zeile 7, Spalte 25“ anzeigt.

next_row#

next_row bewegt den Cursor in die Spalte 1 der nächsten Zeile auf dem Controller-Bildschirm.

Usage:
controller.screen.next_row()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

# Display two lines of text.
controller.screen.print("Line 1")
controller.screen.next_row()
controller.screen.print("Line 2")

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit weißem Text in der oberen linken Ecke, der in der obersten Zeile „Zeile 1“ und direkt darunter „Zeile 2“ anzeigt.

clear_row#

clear_row löscht eine Textzeile auf dem Controller-Bildschirm.

Usage:
controller.screen.clear_row(row, color)

Parameter

Beschreibung

row

Optional. Die zu löschende Zeile. Standardmäßig wird die Zeile der aktuellen Cursorposition verwendet.

color

Optional. Die Farbe, die auf die gelöschte Zeile angewendet werden soll. Wenn keine Farbe angegeben wird, wird die set_fill_color-Funktion verwendet. Optionen:

  • BLACK
  • BLUE
  • CYAN
  • GREEN
  • ORANGE
  • PURPLE
  • RED
  • TRANSPARENT
  • WHITE
  • YELLOW
Sie können auch eine benutzerdefinierte Farbe angeben.

# 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 gibt die aktuelle Zeile, in der der Text ausgegeben wird, als Ganzzahl zurück.

Usage:
controller.screen.get_row()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

# Display the cursor's current row.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print(controller.screen.get_row())

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit weißem Text in der Nähe der Mitte, der 7 lautet, an Position Zeile 7, Spalte 25.

get_column#

get_column gibt die aktuelle Spalte, in der der Text ausgegeben wird, als Ganzzahl zurück.

Usage:
controller.screen.get_column()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

# Display the cursor's current column.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print(controller.screen.get_column())

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit weißem Text in der Nähe der Mitte, der 25 lautet, in Zeile 7, Spalte 25.

XY-Druck#

set_origin#

set_origin wird der Ursprung (0, 0) für das Zeichnen und koordinatenbasierte Drucken auf dem Controller-Bildschirm festgelegt. Standardmäßig befindet sich der Ursprung in der oberen linken Ecke des Bildschirms. Mit dieser Methode kann der Ursprung auf eine alternative (x, y)-Koordinatenposition auf dem Bildschirm zurückgesetzt werden.

Usage:
controller.screen.set_origin(x, y)

Parameter

Beschreibung

x

Die neue x-Koordinate, die als Ursprung festgelegt werden soll, wird als ganze Zahl von 0 bis 640 angegeben.

y

Die neue y-Koordinate, die als Ursprung festgelegt werden soll, wird als ganze Zahl von 0 bis 480 angegeben.

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung, wobei ein weißes Rechteck eingezeichnet ist, sodass die obere linke Ecke die Mitte des Bildschirms bildet.

Mutatoren#

clear_screen#

clear_screen löscht alle Zeichnungen, Texte und Bilder vom Controller-Bildschirm.

Usage:
controller.screen.clear_screen(row, col, color)

Parameter

Beschreibung

row

Optional. Die Zeile, in die der Cursor nach dem Löschen des Bildschirms verschoben werden soll. Standardwert ist 1.

col

Optional. Die Spalte, in die der Cursor nach dem Löschen des Bildschirms verschoben werden soll. Standardwert ist 1.

color

Optional. Sets the screen color. If row and col are included, use color as the third argument. Options include:

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

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

Die Methode wait_for_render schaltet die Bildschirmdarstellung auf „später rendern“ um. Nach Ausführung dieser Methode werden nachfolgende Bildschirmbefehle erst wieder auf dem Controller-Bildschirm angezeigt, wenn die wait_for_render ausgeführt wird.

Hinweis: Verwenden Sie diese Funktion, bevor Sie eine Gruppe von Texten, Formen oder Bildern zeichnen, und verwenden Sie sie dann erneut, um die gesamte Aktualisierung auf einmal darzustellen.

Usage:
controller.screen.wait_for_render()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit weißem Text „Bildschirm gerendert!“ in der oberen linken Ecke und einem weißen Kreis in der Mitte des Bildschirms.

set_font#

set_font wird die Schriftart für die Textanzeige auf dem Controller-Bildschirm festgelegt. Diese Schriftart wird für alle nach Ausführung dieser Methode ausgegebenen Texte verwendet. Die Standardschriftart zu Projektbeginn ist MONO20.

Usage:
controller.screen.set_font(fontname)

Parameter

Beschreibung

fontname

Sets the font to one of the following:

  • MONO12
  • MONO15
  • MONO20
  • MONO24
  • MONO30
  • MONO36
  • MONO40
  • MONO60
  • PROP20
  • PROP24
  • PROP30
  • PROP36
  • PROP40
  • PROP60

Screenshot des VEX AIR Drohnen-Controller-Bildschirms mit verschiedenen weißen Buchstaben und Zahlen in der Schriftart Mono 12 in der oberen linken Ecke. Die Buchstaben AZ stehen in einer Zeile und nehmen etwa ein Drittel der Bildschirmbreite ein. In der unteren linken Ecke steht 91 Zeichen in 30 Zeilen.
MONO12

Dasselbe Bild wie zuvor, jetzt in Mono 15-Schriftart. Die Buchstaben AZ stehen in einer Zeile und nehmen fast die Hälfte der Bildschirmbreite ein. In der unteren linken Ecke steht 71 Zeichen breit und 23 Zeilen lang.
MONO15

Dasselbe Bild wie zuvor, jetzt in Mono 20-Schriftart. Die Buchstaben AZ stehen in einer Zeile und nehmen die halbe Bildschirmbreite ein. In der unteren linken Ecke steht: 53 Zeichen breit und 18 Zeilen.
MONO20

Dasselbe Bild wie zuvor, jetzt in Mono 24-Schrift. Die Buchstaben AZ stehen in einer Zeile und nehmen etwas mehr als die Hälfte der Bildschirmbreite ein. In der unteren linken Ecke steht: 45 Zeichen breit und 15 Zeilen.
MONO24

Dasselbe Bild wie zuvor, jetzt in Mono 30-Schriftart. Die Buchstaben AZ stehen in einer Zeile und nehmen etwa drei Viertel der Bildschirmbreite ein. In der unteren linken Ecke steht: 35 Zeichen breit und 12 Zeilen.
MONO30

Dasselbe Bild wie zuvor, jetzt in Mono 36-Schrift. Die Buchstaben AZ stehen in einer Zeile und erstrecken sich fast über die gesamte Bildschirmbreite. In der unteren linken Ecke steht 29 Zeichen in der Breite und 10 Zeilen.
MONO36

Dasselbe Bild wie zuvor, jetzt in Mono 40-Schriftart. Die Buchstaben AZ stehen in einer Zeile und erstrecken sich über die gesamte Bildschirmbreite. In der unteren linken Ecke steht 26 Zeichen in 9 Zeilen.
MONO40

Dasselbe Bild wie zuvor, jetzt in Mono 60-Schriftart. Die Buchstaben AQ stehen in einer Zeile über die gesamte Bildschirmbreite. In der unteren linken Ecke stehen 17 Zeichen in 6 Zeilen.
MONO60

Dasselbe Bild wie zuvor, jetzt in Prop-20-Schriftart. Die Buchstaben AZ stehen in einer Zeile und nehmen etwas mehr als die Hälfte der Bildschirmbreite ein. In der unteren linken Ecke steht: 49 Zeichen breit und 18 Zeilen.
PROP20

Dasselbe Bild wie zuvor, jetzt in Prop-24-Schriftart. Die Buchstaben AZ stehen in einer Zeile und nehmen etwa zwei Drittel der Bildschirmbreite ein. In der unteren linken Ecke steht: 42 Zeichen breit und 15 Zeilen.
PROP24

Dasselbe Bild wie zuvor, jetzt in Prop-30-Schriftart. Die Buchstaben AZ stehen in einer Zeile und nehmen drei Viertel der Bildschirmbreite ein. In der unteren linken Ecke steht: 33 Zeichen breit und 12 Zeilen.
PROP30

Dasselbe Bild wie zuvor, jetzt in Prop-36-Schriftart. Die Buchstaben AZ stehen in einer Zeile und erstrecken sich fast über die gesamte Bildschirmbreite. In der unteren linken Ecke steht 27 Zeichen in 10 Zeilen.
PROP36

Dasselbe Bild wie zuvor, jetzt in Prop-40-Schriftart. Die Buchstaben AY befinden sich in einer Zeile und erstrecken sich über die gesamte Bildschirmbreite. In der unteren linken Ecke steht: 24 Zeichen breit und 9 Zeilen.
PROP40

Dasselbe Bild wie zuvor, jetzt in Prop 60-Schriftart. Die Buchstaben AQ befinden sich in einer Zeile und erstrecken sich über die gesamte Bildschirmbreite. In der unteren linken Ecke steht: 17 Zeichen breit und 6 Zeilen.
PROP60

# Display text using a larger font.
controller.screen.set_font(MONO40)
controller.screen.print("VEX")

Dasselbe Bild wie die vorherigen, jetzt mit dem Wort VEX in Mono 40-Schriftart in der oberen linken Ecke.

set_pen_width#

set_pen_width legt die Dicke der gezeichneten Linien und Formkonturen fest.

Usage:
controller.screen.set_pen_width(width)

Parameter

Beschreibung

width

Die Stiftbreite, angegeben als ganze Zahl in Pixeln.

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit einem weißen Rechteck mit dickem Rand in der Mitte.

set_pen_color#

set_pen_color legt die Farbe von Text, Pixeln, Linien und Formumrissen fest.

Usage:
controller.screen.set_pen_color(color)

Parameter

Beschreibung

color

Optional. Sets the pen and font color. Options include:

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

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit einem dünnen orangefarbenen Rechteck, in dessen Mitte in Weiß die Worte VEXcode AIR aufgedruckt sind.

set_text_fill_color#

set_text_fill_color legt die Füllfarbe hinter dem gedruckten Text fest. Die Standardfüllfarbe ist transparent.

Usage:
controller.screen.set_text_fill_color(color)

Parameter

Beschreibung

color

Optional. Legt die Textfüllfarbe fest. Optionen:

  • BLACK
  • BLUE
  • CYAN
  • GREEN
  • ORANGE
  • PURPLE
  • RED
  • TRANSPARENT
  • WHITE
  • YELLOW
Sie können auch eine benutzerdefinierte Farbe angeben.

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

Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit zwei Textzeilen in der oberen linken Ecke. Die erste lautet „Rot“ in weißer Schrift mit roter Hervorhebung, die zweite, direkt darunter, lautet „Blau“ in weißer Schrift mit blauer Hervorhebung.

set_fill_color#

set_fill_color legt die Füllfarbe für das Zeichnen von Formen fest. Die Standardfüllfarbe ist Schwarz.

Usage:
controller.screen.set_fill_color(color)

Parameter

Beschreibung

color

Optional. Legt die Füllfarbe fest. Optionen:

  • BLACK
  • BLUE
  • CYAN
  • GREEN
  • ORANGE
  • PURPLE
  • RED
  • TRANSPARENT
  • WHITE
  • YELLOW
Sie können auch eine benutzerdefinierte Farbe angeben.

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit einem orangefarbenen Rechteck mit dünnem weißen Rand und dem weißen Text „VEXcode AIR“ in der Mitte.

Ziehen#

draw_pixel#

draw_pixel zeichnet ein Pixel an der ausgewählten x- und y-Koordinate unter Verwendung der aktuellen Stiftfarbe.

Usage:
controller.screen.draw_pixel(x, y)

Parameter

Beschreibung

x

Die x-Koordinate, an der das Pixel gezeichnet werden soll, angegeben als ganze Zahl von 0 bis 640.

y

Die y-Koordinate, an der das Pixel gezeichnet werden soll, angegeben als ganze Zahl von 0 bis 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)

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit 5 gleichmäßig verteilten Pixeln, die diagonal über die Mitte des Bildschirms angeordnet sind.

draw_line#

draw_line zeichnet eine Linie von der ersten Bildschirmkoordinate (x1, y1) zur zweiten Bildschirmkoordinate (x2, y2) unter Verwendung der aktuellen Stiftbreite und Stiftfarbe.

Die x- und y-Koordinaten verwenden den Standardursprung (0, 0), es sei denn, ein anderer Ursprung wurde mit set_origin festgelegt.

Usage:
controller.screen.draw_line(x1, y1, x2, y2)

Parameter

Beschreibung

x1

Die Start-x-Koordinate der Geraden, angegeben als ganze Zahl von 0 bis 640.

y1

Die Start-y-Koordinate der Geraden, angegeben als ganze Zahl von 0 bis 480.

x2

Die End-x-Koordinate der Geraden, angegeben als ganze Zahl von 0 bis 640.

y2

Die y-Endkoordinate der Geraden, angegeben als ganze Zahl von 0 bis 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)

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit einer weißen Linie, die von der oberen linken zur unteren rechten Ecke verläuft, und einer türkisfarbenen Linie, die von der unteren linken zur oberen rechten Ecke verläuft und sich in der Mitte schneidet.

draw_rectangle#

draw_rectangle zeichnet ein Rechteck unter Verwendung der aktuellen Stiftbreite, Stiftfarbe und Füllfarbe, es sei denn, der optionale Parameter color wird verwendet.

Die x- und y-Koordinaten verwenden den Standardursprung (0, 0), es sei denn, ein anderer Ursprung wurde mit set_origin festgelegt.

Usage:
controller.screen.draw_rectangle(x, y, width, height, color)

Parameter

Beschreibung

x

Die x-Koordinate der oberen linken Ecke des Rechtecks, angegeben als ganze Zahl von 0 bis 640.

y

Die y-Koordinate der oberen linken Ecke des Rechtecks, angegeben als ganze Zahl von 0 bis 480.

width

Die Breite des Rechtecks, angegeben als ganze Zahl von 0 bis 640.

height

Die Höhe des Rechtecks, angegeben als ganze Zahl von 0 bis 480.

color

Optional. Sets the fill color of the rectangle. Options include:

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

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit einem in der Mitte aufgedruckten grünen Rechteck mit einem dünnen weißen Rand und einem dünnen weißen Rechteck an den äußeren Rändern des Bildschirms.

draw_circle#

draw_circle zeichnet einen Kreis unter Verwendung der aktuellen Stiftbreite, Stiftfarbe und Füllfarbe, es sei denn, der optionale Parameter color wird verwendet.

Die x- und y-Koordinaten verwenden den Standardursprung (0, 0), es sei denn, ein anderer Ursprung wurde mit set_origin festgelegt.

Usage:
controller.screen.draw_circle(x, y, radius, color)

Parameter

Beschreibung

x

Die x-Koordinate des Mittelpunkts des Kreises, angegeben als ganze Zahl von 0 bis 640.

y

Die y-Koordinate des Mittelpunkts des Kreises, angegeben als ganze Zahl von 0 bis 480.

radius

Der Radius des Kreises, angegeben als ganze Zahl von 0 bis 480 Pixel.

color

Optional. Sets the fill color of the circle. Options include:

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

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

Ein Screenshot des Bildschirms der VEX AIR Drohnensteuerung mit einem großen, ausgefüllten grünen Kreis mit einem dünnen weißen Rand, der mittig auf dem Bildschirm eingezeichnet ist.

show_file#

show_file zeichnet ein benutzerdefiniertes, hochgeladenes Bild auf dem Controller-Bildschirm an einer x- und y-Position, mit optionaler Skalierung, Drehung und Alpha-Transparenz.

Usage:
controller.screen.show_file(file, x, y, scale_width, scale_height, rotation, use_alpha)

Parameter

Beschreibung

file

Das vom Benutzer hochgeladene Bild, das verwendet werden soll. Die Optionen ändern sich, wenn Bildnamen in der Systemsteuerung bearbeitet werden.

x

Der horizontale Versatz des Bildes, angegeben als ganze Zahl in Pixeln. Positive Werte verschieben es nach rechts, negative Werte nach links.

y

Der vertikale Versatz des Bildes, angegeben als ganze Zahl in Pixeln. Positive Werte verschieben es nach unten, negative Werte nach oben.

scale_width

Optional. Die Breite des Bildes, auf die skaliert wird, angegeben als ganze Zahl in Pixeln.

scale_height

Optional. Die Höhe des Bildes, auf die skaliert wird, angegeben als ganze Zahl in Pixeln.

rotation

Optional. Die Anzahl der Grad, um die das Bild gedreht werden soll, angegeben als ganze Zahl von 0 bis 359.

use_alpha

Optional. Gibt an, ob der Alphakanal des Bildes für Transparenz verwendet werden soll. Optionen: True oder False.

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

Berühren#

pressing#

pressing wird ein boolescher Wert zurückgegeben, der angibt, ob der Bildschirm des Roboters gerade berührt wird.

  • True – Der Bildschirm wird gedrückt.

  • False – Der Bildschirm wird nicht berührt.

Usage:
controller.screen.pressing()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

# 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 gibt die x-Koordinate in Pixeln zurück, an der der Bildschirm zuletzt berührt wurde, als ganze Zahl von 0 (links) bis 640 (rechts).

Ein VEX AIR Drohnen-Controller, dessen druckbarer Bereich des Bildschirms beschriftet und rot umrandet ist. Die Koordinaten beginnen mit (0,0) in der oberen linken Ecke und verlaufen im Uhrzeigersinn über (0, 640), (480, 640) und (480,0) zur unteren linken Ecke. Die Koordinaten der Bildschirmmitte sind (240, 320).

Usage:
controller.screen.x_position()

Parameter

Beschreibung

Diese Methode hat keine Parameter.

# 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 gibt die y-Koordinate in Pixeln zurück, an der der Bildschirm zuletzt berührt wurde, als ganze Zahl von 0 (oben) bis 480 (unten).

Ein VEX AIR Drohnen-Controller, dessen druckbarer Bereich des Bildschirms beschriftet und rot umrandet ist. Die Koordinaten beginnen mit (0,0) in der oberen linken Ecke und verlaufen im Uhrzeigersinn über (0, 640), (480, 640) und (480,0) zur unteren linken Ecke. Die Koordinaten der Bildschirmmitte sind (240, 320).

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)

Rückrufe#

pressed#

pressed registriert eine Funktion, die beim Drücken des Controller-Bildschirms aufgerufen werden soll.

Usage:
controller.screen.pressed(callback, arg)

Parameter

Beschreibung

callback

Eine Funktion, die zuvor definiert wurde und ausgeführt werden soll, wenn der Controller-Bildschirm gedrückt wird.

arg

Optional. Ein Tupel mit Argumenten, die an die Callback-Funktion übergeben werden sollen. Weitere Informationen finden Sie unter Verwendung von Funktionen mit Parametern.

# Play a sound when the screen is pressed.
def play_sound():
    controller.sound.play_note("C5", 500)

controller.screen.pressed(play_sound)

released#

released registriert eine Funktion, die aufgerufen werden soll, wenn der Controller-Bildschirm losgelassen wird.

Usage:
controller.screen.released(callback, arg)

Parameter

Beschreibung

callback

Eine Funktion, die zuvor definiert wurde und ausgeführt werden soll, wenn der Controller-Bildschirm losgelassen wird.

arg

Optional. Ein Tupel mit Argumenten, die an die Callback-Funktion übergeben werden sollen. Weitere Informationen finden Sie unter Verwendung von Funktionen mit Parametern.

# Play a sound when the screen is pressed.
def play_sound():
    controller.sound.play_note("C5", 500)

controller.screen.released(play_sound)