Pantalla#
Introducción#
La pantalla del robot de codificación VEX AIM ofrece métodos para mostrar texto, gestionar el cursor, dibujar formas y gestionar interacciones táctiles. A continuación, se muestra una lista de todos los métodos disponibles:
Impresión del cursor: muestra el texto utilizando un sistema de filas y columnas.
print – Prints text at the current cursor position.
set_cursor – Sets the cursor to a specific row and column.
next_row – Moves the cursor to column 1 of the next row.
clear_row – Clears a row of text.
get_row – Returns the current cursor row.
get_column – Returns the current cursor column.
Impresión XY: muestra el texto en una coordenada de pantalla específica.
print_at – Prints text at a specific x and y location.
set_origin – Sets a new origin for printing and drawing.
Mutadores: limpia la pantalla o actualiza la configuración visual.
clear_screen – Clears the screen of all drawings and text.
set_font – Sets the font for printed text.
set_pen_width – Sets the thickness for drawn shapes and lines.
set_pen_color – Sets the color for outlines and text.
set_fill_color – Sets the fill color for shapes and backgrounds.
Dibujar – Agregar gráficos e imágenes a la pantalla.
draw_pixel – Draws a pixel at a specific x and y position.
draw_line – Draws a line between two points.
draw_rectangle – Draws a rectangle.
draw_circle – Draws a circle.
show_file – Displays an uploaded image.
set_clip_region – Restricts where drawings and text can appear.
Táctil: detecta y responde a las pulsaciones de la pantalla.
x_position – Returns the x-coordinate where the screen is pressed.
y_position – Returns the y-coordinate where the screen is pressed.
pressing – Returns whether the screen is currently being pressed.
Devolución de llamada: ejecuta funciones cuando se presiona o suelta la pantalla.
Cursor Imprimir#
print#
print
displays text on the robot’s screen at the current cursor position and font.
Uso:robot.screen.print(text)
Parámetros |
Descripción |
---|---|
|
El texto, número o valor de variable que se mostrará en la pantalla. |
# Display a message at the starting cursor position
robot.screen.print("Hello, Robot!")
set_cursor#
set_cursor
coloca el cursor de texto en una fila y columna específicas de la pantalla. El número de filas y columnas que caben depende de la fuente seleccionada. Con la fuente monoespaciada mediana predeterminada, la pantalla puede mostrar con claridad hasta 8 filas y 13 columnas. El texto que se encuentre fuera de este rango puede quedar cortado o ser más difícil de leer.
Monospaced fonts have characters that are all the same width, making text placement consistent. In contrast, proportional fonts vary in character width, so some letters take up more space than others. However, regardless of which type is used, the set_cursor
positions the cursor based on row and column size, not font style. The font size can be adjusted using the set_font.
Uso:robot.screen.set_cursor(row, column)
Parámetros |
Descripción |
---|---|
|
La fila del cursor. |
|
La columna del cursor. |
# 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
mueve el cursor a la columna 1 en la siguiente fila de la pantalla del robot.
Uso:robot.screen.next_row()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Display two lines of text
robot.screen.print("Line 1")
robot.screen.next_row()
robot.screen.print("Line 2")
clear_row#
clear_row
borra una fila de texto en la pantalla del robot.
Uso:robot.screen.clear_row(row, color)
Parámetro |
Descripción |
---|---|
|
Opcional. La fila que se va a borrar. El valor predeterminado es la fila actual del cursor. |
|
Optional. The color to apply to the cleared row. Options include:
|
# 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#
row
devuelve la fila actual donde el texto se imprimirá como un entero.
Uso:robot.screen.get_row()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Set cursor to (3,2) and print row number
robot.screen.set_cursor(3, 2)
robot.screen.print(robot.screen.get_row())
get_column#
column
devuelve la columna actual donde el texto se imprimirá como un entero.
Uso:robot.screen.get_column()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Set cursor to (3,2) and print column number
robot.screen.set_cursor(3, 2)
robot.screen.print(robot.screen.get_column())
Impresión XY#
print_at#
print_at
block displays text on the robot’s screen at a specified x and y-coordinate (in pixels) with the currently set font. This method disregards the current cursor position.
Uso:
robot.screen.print_at(text, x, y)
Parámetro |
Descripción |
---|---|
|
El texto, número o valor de variable que se mostrará en la pantalla. |
|
La posición horizontal del texto, como un entero de 0 a 240 píxeles. 0 es izquierda; 240 es derecha. |
|
La posición vertical del texto, como un entero de 0 a 240 píxeles. 0 es la parte superior; 240 es la parte inferior. |
# Display a message in the middle of the screen
robot.screen.print_at("Hello, Robot!", x=40, y=120)
set_origin#
set_origin
establece el origen (0,0) utilizado para dibujar o imprimir en la pantalla del robot. Por defecto, los métodos de dibujo o impresión consideran la esquina superior izquierda de la pantalla como origen. Este método puede restablecer el origen a una ubicación alternativa de coordenadas (x, y) en la pantalla.
Uso:
robot.screen.set_origin(x, y)
Parámetro |
Descripción |
---|---|
|
La nueva coordenada x que se establecerá como origen, expresada como un número entero de 0 a 240. |
|
La nueva coordenada y que se establecerá como origen, expresada como un número entero de 0 a 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)
Mutadores#
clear_screen#
clear_screen
clears all drawings and text from the robot’s screen. By default, it also resets the cursor position to row 1, column 1.
Usage:
robot.screen.clear_screen(row, column, color)
Parámetro |
Descripción |
---|---|
|
Optional. The row number to move the cursor to after clearing. Default 1. |
|
Optional. The column number to move the cursor to after clearing. Default is 1. |
|
Optional. Sets the screen color. Options include:
|
# 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
sets the font used for displaying text on the robot’s screen. This font will apply to all text printed with print or print_at. The default font at the start of a project is MONO24
.
Uso:
robot.screen.set_font(fontname)
Parámetro |
Descripción |
---|---|
|
Establece la fuente en una de las siguientes:
|
|
|
|
---|---|---|
|
|
|
|
|
|
|
|
# Display text using a larger font
robot.screen.set_font(MONO40)
robot.screen.print("VEX")
set_pen_width#
set_pen_width
establece el ancho del lápiz utilizado para dibujar líneas y formas.
Uso:
robot.screen.set_pen_width(width)
Parámetro |
Descripción |
---|---|
|
El ancho del lápiz, expresado como un número entero en píxeles en un rango de 0 a 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
establece el color del lápiz utilizado para dibujar líneas, formas y texto.
Parámetro |
Descripción |
---|---|
|
Optional. Sets the pen color. Options include:
|
Uso:
robot.screen.set_pen_color(color)
# Draw a rectangle with a red pen
robot.screen.set_pen_color(RED)
robot.screen.draw_rectangle(50, 50, 130, 60)
set_fill_color#
El método set_fill_color
establece el color de relleno utilizado cuando se dibujan formas.
Parámetro |
Descripción |
---|---|
|
Optional. Sets the fill color. Options include:
|
Uso:robot.screen.set_fill_color(color)
# 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")
Dibujar#
draw_pixel#
draw_pixel
draws a pixel at the specified (x, y) screen coordinate in the current pen color. It uses the current pen color set by set_pen_color
.
Uso:
robot.screen.draw_pixel(x, y)
Parámetro |
Descripción |
---|---|
|
La coordenada x donde se dibujará el píxel, expresada como un número entero de 0 a 240. |
|
La coordenada y donde se dibujará el píxel, expresada como un número entero de 0 a 240. |
# Draw a pixel at the center of the screen
robot.screen.draw_pixel(120, 120)
draw_line#
draw_line
draws a line from the first specified screen coordinate (x1, y1)
to the second specified screen coordinate (x2, y2)
. It uses the current the pen width set by set_pen_width and pen color set by set_pen_color.
The x and y-coordinates use the default origin of (0, 0) unless a different origin has been set using set_origin
.
Uso:
robot.screen.draw_line(x1, y1, x2, y2)
Parámetro |
Descripción |
---|---|
|
La coordenada x inicial de la línea, expresada como un número entero entre 0 y 240. |
|
La coordenada y inicial de la línea, expresada como un número entero entre 0 y 240. |
|
La coordenada x final de la línea, expresada como un número entero entre 0 y 240. |
|
La coordenada y final de la línea, expresada como un número entero entre 0 y 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
draws a rectangle with its top-left corner at the specified (x, y)
coordinate and a size determined by the given width and height, all measured in pixels. The rectangle’s outline is drawn using the current pen width set by set_pen_width
and the pen color set by set_pen_color
. The interior is filled with the color set by set_fill_color
.
The x and y-coordinates use the default origin of (0,0) unless a different origin has been set using set_origin.
Uso:robot.screen.draw_rectangle(x, y, width, height, color)
Parámetro |
Descripción |
---|---|
|
La coordenada x de la esquina superior izquierda del rectángulo, expresada como un número entero de 0 a 240. |
|
La coordenada y de la esquina superior izquierda del rectángulo, expresada como un número entero de 0 a 240. |
|
El ancho del rectángulo, expresado como un número entero de 0 a 240. |
|
La altura del rectángulo, expresada como un número entero de 0 a 240. |
|
Opcional. El color de relleno del rectángulo. Las opciones incluyen:
|
# Draw a red rectangle on the screen
robot.screen.draw_rectangle(50, 50, 130, 60, RED)
draw_circle#
draw_circle
draws a circle with its center at the specified (x, y)
coordinate and a size determined by the given radius, all measured in pixels. The circle’s outline is drawn using the current pen width set by set_pen_width
and the pen color set by set_pen_color
. The interior is filled with the color set by set_fill_color
.
The x and y-coordinates use the default origin of (0,0) unless a different origin has been set using set_origin.
Uso:robot.screen.draw_circle(x, y, radius, color)
Parámetro |
Descripción |
---|---|
|
La coordenada x del centro del círculo, expresada como un número entero de 0 a 240. |
|
La coordenada y del centro del círculo, expresada como un número entero de 0 a 240. |
|
El radio del círculo, expresado como un número entero de 0 a 240 píxeles. |
|
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
muestra una imagen cargada personalizada en la pantalla del robot, con su posición establecida utilizando los parámetros x
, y
y center
basados en el punto de referencia de la imagen.
Uso:
robot.screen.show_file(file, x, y, center)
Parámetro |
Descripción |
---|---|
|
La imagen personalizada que se usará, de |
|
El desplazamiento horizontal de la imagen, expresado como un entero en píxeles. Los valores positivos lo desplazan hacia la derecha; los negativos, hacia la izquierda. |
|
El desplazamiento vertical de la imagen, expresado como un entero en píxeles. Los valores positivos lo desplazan hacia abajo; los negativos, hacia arriba. |
|
Optional. If |
# 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
define un área rectangular en la pantalla donde se confinarán todos los dibujos y el texto. El contenido fuera de esta región no se mostrará.
Uso:
robot.screen.set_clip_region(x, y, width, height)
Parámetro |
Descripción |
---|---|
|
La coordenada x de la esquina superior izquierda de la región de recorte, expresada como un número entero o flotante de 0 a 240. |
|
La coordenada y de la esquina superior izquierda de la región de recorte, expresada como un número entero o flotante de 0 a 240. |
|
El ancho de la región de recorte en píxeles, expresado como un número entero o flotante de 0 a 240. |
|
La altura de la región de recorte en píxeles, expresada como un entero o un punto flotante entre 0 y 240. |
# 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)
Tocar#
pressing#
pressing
devuelve un valor booleano que indica si la pantalla está siendo presionada actualmente.
True
– Se está presionando la pantallaFalse
– La pantalla no está siendo presionada
Uso:
robot.screen.pressing()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# 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)
x_position#
x_position
devuelve la coordenada x donde se presiona la pantalla como un entero de 0 (izquierda) a 240 (derecha).
Uso:robot.screen.x_position()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# 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
devuelve la coordenada y donde se presiona la pantalla como un entero de 0 (arriba) a 240 (abajo).
Uso:robot.screen.y_position()
# 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)
Llamar de vuelta#
pressed#
pressed
registra un método que se llamará cuando se presione la pantalla del robot.
Uso:robot.screen.pressed(callback, arg)
Parámetros |
Descripción |
---|---|
|
Un método que se llamará cuando se presione la pantalla. |
|
Opcional. Una tupla que contiene argumentos para pasar al método de devolución de llamada cuando se llama. |
# 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
registra un método que se llamará cuando ya no se presione la pantalla.
Uso:robot.screen.released(callback, arg)
Parámetros |
Descripción |
---|---|
|
Un método que se llamará cuando se suelte la pantalla. |
|
Optional. A tuple containing arguments to pass to the callback method when it is called. |
# Set the LEDs to blue when the screen is released.
def screen_released():
robot.led.on(ALL_LEDS, BLUE)
robot.screen.released(screen_released)