Skärm#
Introduktion#
Skärmmetoderna styr hur VEX AIM-kodningsroboten visar text, siffror och grafik på skärmen, och hur den reagerar på skärmtryckningar.
Nedan följer en lista över alla metoder:
Pekskärm – Upptäck och reagera på skärmtryckningar.
pressing– Returnerar om skärmen trycks ned för närvarande.x_position– Returnerar x-koordinaten för det senaste skärmtrycket.y_position– Returnerar y-koordinaten för det senaste skärmtrycket.
Markörutskrift – Visa text med hjälp av ett rad-/kolumnsystem.
print– Skriver ut text, siffror eller variabelvärden vid markörens aktuella position.set_cursor– Flyttar markören till en specifik rad och kolumn.next_row– Flyttar markören till kolumn 1 på nästa rad.clear_row– Rensar en textrad.get_row– Returnerar den aktuella markörraden.get_column– Returnerar den aktuella markörkolumnen.
XY-utskrift – Visar text vid en specifik skärmkoordinat.
print_at– Skriver ut text, siffror eller variabelvärden vid en specifik x- och y-koordinat.set_origin– Anger origo som används för koordinatbaserad utskrift och ritning.
Mutatorer – Rensa skärmen eller uppdatera visuella inställningar.
clear_screen– Rensar skärmen från alla ritningar och text.set_font– Anger teckensnittet för utskriven text.set_pen_width– Anger tjockleken på ritade linjer och formens konturer.set_pen_color– Ställer in färgen på text, pixlar, linjer och konturer.set_fill_color– Anger fyllningsfärgen för ritade former och utskrivna textbakgrunder.
Rita – Lägg till grafik och bilder på skärmen.
draw_pixel– Ritar en pixel vid en specifik x- och y-position.draw_line– Ritar en linje mellan två punkter.draw_rectangle– Ritar en rektangel.draw_circle– Ritar en cirkel.show_file– Visar en uppladdad bild.set_clip_region– Begränsar var teckningar och text kan visas.
Återuppringningar – Kör funktioner när skärmen trycks eller släpps.
Röra#
pressing#
pressing returnerar ett booleskt värde som anger om robotens skärm trycks ned för närvarande.
True– Skärmen trycks ned.False– Skärmen trycks inte.
Usage:
robot.screen.pressing()
Parametrar |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Turn LEDs white only while the screen is pressed.
while True:
if robot.screen.pressing():
robot.led.on(ALL_LEDS, WHITE)
else:
robot.led.off(ALL_LEDS)
wait(50, MSEC)
# Display different messages after the screen is pressed
while not robot.screen.pressing():
wait(5, MSEC)
robot.screen.print("First message!")
robot.screen.next_row()
# Lift finger to press the screen again
while robot.screen.pressing():
wait(5, MSEC)
while not robot.screen.pressing():
wait(5, MSEC)
robot.screen.print("Second message!")
robot.screen.next_row()
x_position#
x_position returnerar x-koordinaten för det senaste skärmtrycket som ett heltal från 0 (vänster) till 240 (höger).
Usage:robot.screen.x_position()
Parametrar |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Display the x-coordinate of where
# the screen is pressed
while True:
if robot.screen.pressing():
robot.screen.clear_screen()
robot.screen.print(robot.screen.x_position())
wait (50, MSEC)
y_position#
y_position returnerar y-koordinaten för det senaste skärmtrycket som ett heltal från 0 (överst) till 240 (nederst).
Usage:robot.screen.y_position()
Parametrar |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Display the y-coordinate of where
# the screen is pressed
while True:
if robot.screen.pressing():
robot.screen.clear_screen()
robot.screen.print(robot.screen.y_position())
wait (50, MSEC)
Markörutskrift#
print#
print skriver ut text, siffror eller variabelvärden på robotens skärm vid aktuell markörposition och font.
Usage:robot.screen.print(text)
Parametrar |
Beskrivning |
|---|---|
|
Texten, talet eller variabelvärdet som ska visas på skärmen. |
# Display a message at the starting cursor position
robot.screen.print("Hello, Robot!")

set_cursor#
set_cursor flyttar textmarkören till en specifik rad och kolumn på robotens skärm. Nästa print anrop börjar skriva ut på den platsen. Antalet rader och kolumner som får plats beror på det valda teckensnittet. Med standardteckensnittet med fast radavstånd i mellanstorlek kan skärmen tydligt visa upp till 8 rader och 13 kolumner. Text som placeras utanför detta intervall kan bli avskuren eller svårare att läsa.
Monospaced-teckensnitt har tecken som alla har samma bredd, vilket gör textplaceringen konsekvent. Däremot varierar proportionella teckensnitt i teckenbredd, så vissa bokstäver tar upp mer utrymme än andra. Oavsett vilken typ som används placerar set_cursor markören baserat på rad- och kolumnstorlek, inte teckensnittsstil. Teckenstorleken kan justeras med set_font.
Usage:robot.screen.set_cursor(row, column)
Parametrar |
Beskrivning |
|---|---|
|
Raden att flytta markören till. |
|
Kolumnen att flytta markören till. |
# Display text starting at Row 3 Column 2
robot.screen.set_cursor(3, 2)
robot.screen.print("Row 3, Column 2")

next_row#
next_row flyttar markören till kolumn 1 på nästa rad på robotens skärm.
Usage:robot.screen.next_row()
Parametrar |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Display two lines of text
robot.screen.print("Line 1")
robot.screen.next_row()
robot.screen.print("Line 2")

clear_row#
clear_row rensar en enda rad text på robotens skärm.
Usage:robot.screen.clear_row(row, color)
Parameter |
Beskrivning |
|---|---|
|
Valfritt. Raden som ska rensas som heltal. Standardvärdet är den aktuella markörraden. |
|
Valfritt. Färgen som ska tillämpas på den rensade raden. Alternativen inkluderar:
|
# Display text on two rows
robot.screen.print("This text stays")
robot.screen.next_row()
robot.screen.print("This text disappears")
# Wait 3 seconds before clearing only the second row
wait(3, SECONDS)
robot.screen.clear_row()
# Turn the 5th row green
robot.screen.clear_row(5, GREEN)

get_row#
get_row returnerar den aktuella raden där texten ska skrivas ut som ett heltal.
Usage:robot.screen.get_row()
Parametrar |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Set cursor to (3,2) and print row number
robot.screen.set_cursor(3, 2)
robot.screen.print(robot.screen.get_row())

get_column#
get_column returnerar den aktuella kolumnen där texten ska skrivas ut som ett heltal.
Usage:robot.screen.get_column()
Parametrar |
Beskrivning |
|---|---|
Den här metoden har inga parametrar. |
# Set cursor to (3,2) and print column number
robot.screen.set_cursor(3, 2)
robot.screen.print(robot.screen.get_column())

XY-utskrift#
print_at#
print_at skriver ut text, siffror eller variabelvärden på robotens skärm vid en specifik x- och y-koordinat i pixlar, med hjälp av de aktuellt inställda font och origin. x anger hur långt från vänster sida texten börjar, och y anger var bokstävernas nederkant sitter. Denna metod bortser från markörens aktuella position.

Obs! Den röda cirkeln visar vilka koordinater som kommer att synas på AIM-robotens cirkulära skärm. Koordinater som faller utanför den röda cirkeln finns inom intervallet 0–240 men kommer inte att visas på skärmen.
Usage:
robot.screen.print_at(text, x, y)
Parameter |
Beskrivning |
|---|---|
|
Texten, talet eller variabelvärdet som ska skrivas ut på skärmen. |
|
Textens horisontella position, som ett heltal från 0 till 240 pixlar. 0 är vänster; 240 är höger. |
|
Textens vertikala position, som ett heltal från 0 till 240 pixlar. 0 är toppen; 240 är botten. |
# Display a message in the middle of the screen
robot.screen.print_at("Hello, Robot!", x=40, y=120)

set_origin#
set_origin anger origo som används för ritning och koordinatbaserad utskrift på robotens skärm. Som standard är origo skärmens övre vänstra hörn.
Usage:
robot.screen.set_origin(x, y)
Parameter |
Beskrivning |
|---|---|
|
Den nya x-koordinaten som ska sättas som origo, angiven som ett heltal från 0 till 240. |
|
Den nya y-koordinaten som ska ställas in som origo, angiven som ett heltal från 0 till 240. |
# Set the origin to the center of the screen
robot.screen.set_origin(120, 120)
# Draw a rectangle at the new origin
robot.screen.draw_rectangle(0, 0, 80, 40)

Mutatorer#
clear_screen#
clear_screen rensar alla ritningar och text från robotens skärm. Som standard återställer den även markörens position till rad 1, kolumn 1.
Usage:
robot.screen.clear_screen(color)
Parameter |
Beskrivning |
|---|---|
|
Valfritt. Ställer in skärmfärgen. Alternativen inkluderar:
|
# Draw a circle, and clear it after 2 seconds
robot.screen.draw_circle(120, 120, 60)
wait(2, SECONDS)
robot.screen.clear_screen()
# Set the background color of the screen to red
robot.screen.clear_screen(RED)

set_font#
set_font ställer in teckensnittet som används för att visa text på robotens skärm. Detta teckensnitt gäller för all text som skrivs ut med print eller print_at. Standardteckensnittet i början av ett projekt är MONO24.
Usage:
robot.screen.set_font(fontname)
Parameter |
Beskrivning |
|---|---|
|
Ställer in teckensnittet till ett av följande:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
# Display text using a larger font
robot.screen.set_font(MONO40)
robot.screen.print("VEX")

set_pen_width#
set_pen_width anger tjockleken på ritade linjer och formens konturer.
Usage:
robot.screen.set_pen_width(width)
Parameter |
Beskrivning |
|---|---|
|
Pennans bredd, i pixlar, från 0 till 32. |
# Draw a rectangle with a pen width of 10
robot.screen.set_pen_width(10)
robot.screen.draw_rectangle(50, 50, 130, 60)

set_pen_color#
set_pen_color anger färgen på text, pixlar, linjer och konturer.
Usage:
robot.screen.set_pen_color(color)
Parameter |
Beskrivning |
|---|---|
|
Valfritt. Pennan och teckensnittsfärgen som ska användas. Alternativen inkluderar:
TRANSPARENT |
# Draw a rectangle with a red pen
robot.screen.set_pen_color(RED)
robot.screen.draw_rectangle(50, 50, 130, 60)

set_fill_color#
set_fill_color anger fyllningsfärgen som används när former ritas och när utskriven text använder en bakgrund.
Usage:robot.screen.set_fill_color(color)
Parameter |
Beskrivning |
|---|---|
|
Valfritt. Fyllningsfärgen som ska användas. Alternativen inkluderar:
|
# Draw two orange rectangles
robot.screen.set_fill_color(ORANGE)
robot.screen.draw_rectangle(50, 50, 100, 60)
robot.screen.draw_rectangle(50, 130, 100, 60)

# Display text with a purple background
robot.screen.set_fill_color(PURPLE)
robot.screen.print("Highlight")

Dra#
draw_pixel#
draw_pixel ritar en pixel vid de valda x- och y-koordinaterna med den aktuella pennfärgen.
Usage:
robot.screen.draw_pixel(x, y)
Parameter |
Beskrivning |
|---|---|
|
X-koordinaten där pixeln kommer att ritas, angiven som ett heltal från 0 till 240. |
|
Y-koordinaten där pixeln kommer att ritas, angiven som ett heltal från 0 till 240. |
# Draw a pixel at the center of the screen
robot.screen.draw_pixel(120, 120)
![]()
draw_line#
draw_line ritar en linje från den första skärmkoordinaten (x1, y1) till den andra skärmkoordinaten (x2, y2) med hjälp av aktuell pennbredd och pennfärg.
X- och y-koordinaterna använder standardoriginet (0, 0) om inte ett annat origin har angetts med set_origin.
Usage:
robot.screen.draw_line(x1, y1, x2, y2)
Parameter |
Beskrivning |
|---|---|
|
Linjens start-x-koordinat, angiven som ett heltal från 0 till 240. |
|
Linjens start-y-koordinat, angiven som ett heltal från 0 till 240. |
|
Linjens avslutande x-koordinat, angiven som ett heltal från 0 till 240. |
|
Linjens slutliga y-koordinat, angiven som ett heltal från 0 till 240. |
# Draw a line from the top left to bottom right of the screen
robot.screen.draw_line(0, 0, 240, 240)

draw_rectangle#
draw_rectangle ritar en rektangel med sitt övre vänstra hörn vid den valda (x, y) koordinaten och en storlek som bestäms av den givna bredden och höjden, alla mätta i pixlar. Rektangelns kontur ritas med hjälp av aktuell pennbredd och pennfärg. Interiören fylls med aktuell fyllningsfärg, såvida inte den valfria parametern color används.
X- och y-koordinaterna använder standardoriginet (0, 0) om inte ett annat origin har angetts med set_origin.
Usage:robot.screen.draw_rectangle(x, y, width, height, color)
Parameter |
Beskrivning |
|---|---|
|
X-koordinaten för rektangelns övre vänstra hörn, angiven som ett heltal från 0 till 240. |
|
Y-koordinaten för rektangelns övre vänstra hörn, angiven som ett heltal från 0 till 240. |
|
Rektangelns bredd, angiven som ett heltal från 0 till 240. |
|
Rektangelns höjd, angiven som ett heltal från 0 till 240. |
|
Optional. The fill color of the rectangle. Options include:
|
# Draw a red rectangle on the screen
robot.screen.draw_rectangle(50, 50, 130, 60, RED)

draw_circle#
draw_circle ritar en cirkel med dess centrum vid den valda (x, y) koordinaten och en storlek som bestäms av den givna radien, allt mätt i pixlar. Cirkelns kontur ritas med hjälp av aktuell pennbredd och pennfärg. Interiören fylls med aktuell fyllningsfärg, såvida inte den valfria parametern color används.
X- och y-koordinaterna använder standardoriginet (0, 0) om inte ett annat origin har angetts med set_origin.
Usage:robot.screen.draw_circle(x, y, radius, color)
Parameter |
Beskrivning |
|---|---|
|
X-koordinaten för cirkelns centrum, angiven som ett heltal från 0 till 240. |
|
Y-koordinaten för cirkelns centrum, angiven som ett heltal från 0 till 240. |
|
Cirkelns radie, angiven som ett heltal från 0 till 240 pixlar. |
|
Optional. The fill color of the circle. Options include:
|
# Draw a green circle on the screen
robot.screen.draw_circle(120, 120, 40, GREEN)

show_file#
show_file visar en anpassad uppladdad bild på robotens skärm, med dess position inställd med parametrarna x, yoch center baserat på bildens referenspunkt.
Usage:
robot.screen.show_file(file, x, y, center)
Parameter |
Beskrivning |
|---|---|
|
Den anpassade bilden som ska användas, från |
|
Bildens horisontella förskjutning, angiven som ett heltal i pixlar. Positiva värden flyttar den åt höger; negativa värden flyttar den åt vänster. |
|
Bildens vertikala förskjutning, angiven som ett heltal i pixlar. Positiva värden flyttar den nedåt; negativa värden flyttar den uppåt. |
|
Valfritt. Om |
# Display uploaded Image 1 in the top left corner
robot.screen.show_file(IMAGE1, 0, 0)
# Show the same image on both sides of the screen
# Image size is 120 x 120
robot.screen.show_file(IMAGE1, 65, 0, center=True)
robot.screen.show_file(IMAGE1, -65, 0, center=True)
set_clip_region#
set_clip_region definierar ett rektangulärt område på skärmen där alla teckningar och text begränsas. Innehåll utanför detta område visas inte.
Usage:
robot.screen.set_clip_region(x, y, width, height)
Parameter |
Beskrivning |
|---|---|
|
X-koordinaten för det övre vänstra hörnet av klippområdet, angiven som ett decimaltal ( |
|
Y-koordinaten för det övre vänstra hörnet av klippområdet, angiven som ett decimaltal ( |
|
Klippområdets bredd i pixlar, angiven som ett decimaltal ( |
|
Höjden på klippområdet i pixlar, angiven som ett decimaltal ( |
# Restrict text and drawings to a specific region
robot.screen.set_clip_region(0, 0, 120, 120)
robot.screen.draw_rectangle(60, 60, 100, 100, RED)
robot.screen.print_at("Cut off!", x=60, y=60)

Återuppringningar#
pressed#
pressed registrerar en metod som ska anropas när robotens skärm trycks ned.
Usage:robot.screen.pressed(callback, arg)
Parametrar |
Beskrivning |
|---|---|
|
En funktion som tidigare är definierad att köras när kontrollskärmen trycks ned. |
|
Valfritt. En tupel som innehåller argument som ska skickas till callback-funktionen. Se Använda funktioner med parametrar för mer information. |
# Set the LEDs to green when the screen is pressed.
def screen_touched():
robot.led.on(ALL_LEDS, GREEN)
robot.screen.pressed(screen_touched)
released#
released registrerar en metod som ska anropas när robotens skärm släpps.
Usage:robot.screen.released(callback, arg)
Parametrar |
Beskrivning |
|---|---|
|
En funktion som tidigare är definierad att köras när kontrollskärmen trycks ned. |
|
Valfritt. En tupel som innehåller argument som ska skickas till callback-funktionen. Se Använda funktioner med parametrar för mer information. |
# Set the LEDs to blue when the screen is released.
def screen_released():
robot.led.on(ALL_LEDS, BLUE)
robot.screen.released(screen_released)










