Pantalla#
Introducción#
La pantalla cerebral VEX IQ (2.ª generación) ofrece una variedad de métodos para mostrar información, dibujar formas y controlar los elementos visuales de la pantalla.
A continuación se muestra una lista de todos los métodos:
Métodos – Controlar la visualización en la pantalla del cerebro.
imprimir – Imprime texto en la posición actual del cursor.
print_at – Imprime texto en una ubicación x e y específica.
set_cursor – Establece el cursor en una fila y columna específicas.
set_origin – Establece un nuevo origen para imprimir y dibujar.
set_font – Establece la fuente para el texto impreso.
set_pen_width – Establece el grosor de las formas y líneas dibujadas.
set_pen_color – Establece el color para los contornos y el texto.
set_fill_color – Establece el color de relleno para formas y fondos.
columna – Devuelve la columna del cursor actual.
fila – Devuelve la fila actual del cursor.
get_string_width – Devuelve el ancho de una cadena en píxeles.
get_string_height – Devuelve la altura de una cadena en píxeles.
clear_screen – Limpia la pantalla de todos los dibujos y textos.
clear_row – Borra una fila de texto.
next_row – Mueve el cursor a la columna 1 de la siguiente fila.
draw_pixel – Dibuja un píxel en una posición x e y específica.
draw_line – Dibuja una línea entre dos puntos.
draw_rectangle – Dibuja un rectángulo.
draw_circle – Dibuja un círculo.
[render] – Actualiza la pantalla del Cerebro con texto y dibujos solo cuando se le llama.
set_clip_region – Restringe dónde pueden aparecer dibujos y textos.
imprimir#
print
muestra texto en la pantalla del Cerebro en la posición del cursor y fuente actuales.
Uso:
brain.screen.print(text, precision, opaque)
Parámetros |
Descripción |
---|---|
|
El texto, número o valor de variable que se mostrará en la pantalla. |
|
Opcional. El número de decimales que se mostrarán al mostrar números. Debe escribirse como argumento de palabra clave, por ejemplo: |
|
Opcional.
|
# Display a message at the starting cursor position
brain.screen.print("Hello, Robot!")
# Display a percentage with 4 decimal places and a blue background
brain.screen.set_fill_color(Color.BLUE)
brain.screen.print((42/100), precision = 4, opaque = True)
imprimir_en#
print_at
muestra texto en la pantalla del Brain en una coordenada x e y especificada (en píxeles) con los valores font y origin establecidos. Este método ignora la posición actual del cursor.
Uso:
brain.screen.print_at(texto, x, y, precisión, opaco)
Parámetros |
Descripción |
---|---|
|
El texto a imprimir. |
|
La posición x a imprimir como argumento de palabra clave, es decir: |
|
La posición y para imprimir como argumento de palabra clave, es decir: |
|
Opcional. El número de decimales que se mostrarán al mostrar números. Debe escribirse como argumento de palabra clave, por ejemplo: |
|
Opcional.
|
# Print the number 1 on the Brain's screen at position (100, 40)
brain.screen.print_at(1, x=100, y=40)
# Display 1/3 with 3 decimal places and a blue background
brain.screen.set_fill_color(Color.BLUE)
brain.screen.print_at((1/3), x=100, y=40, precision=3, opaque=True)
establecer_cursor#
set_cursor
coloca el cursor en una fila y columna específicas en la pantalla del Cerebro. La cantidad de filas y columnas que se pueden colocar cómodamente depende de la fuente seleccionada.
Las fuentes monoespaciadas tienen caracteres del mismo ancho, lo que garantiza la uniformidad en la colocación del texto. En cambio, las fuentes proporcionales varían en el ancho de los caracteres, por lo que algunas letras ocupan más espacio que otras. Sin embargo, independientemente del tipo utilizado, set_cursor
posiciona el cursor según el tamaño de fila y columna, no el estilo de fuente. El tamaño de la fuente se puede ajustar con set_font
.
Uso:
brain.screen.set_cursor(fila, columna)
Parámetros |
Descripción |
---|---|
|
La fila del cursor. |
|
La columna del cursor. |
# Repeatedly print the Brain's timer at the
# top left of the screen
while True:
brain.screen.print(brain.timer.time(SECONDS))
brain.screen.next_row()
wait(1, SECONDS)
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
origen_del_conjunto#
set_origin
establece el origen (0,0) utilizado para dibujar o imprimir en la pantalla del Brain. 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:
brain.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 160. |
|
La nueva coordenada y que se establecerá como origen, expresada como un número entero de 0 a 108. |
# Draw a line with the origin set to (50, 50)
brain.screen.set_origin(50, 50)
brain.screen.draw_line(1, 1, 159, 107)
establecer_fuente#
set_font
establece la fuente que se usa para mostrar texto en la pantalla del Brain. Esta fuente se aplicará a todo el texto impreso con print o print_at. La fuente predeterminada al inicio de un proyecto es MONO20
.
Uso:
brain.screen.set_font(fontname)
Parámetro |
Descripción |
---|---|
|
Establece la fuente en una de las siguientes:
|
|
|
|
---|---|---|
|
|
|
|
|
|
|
# Display two different fonts on two separate lines
brain.screen.set_font(FontType.MONO20)
brain.screen.print("Mono Medium")
brain.screen.next_row()
brain.screen.set_font(FontType.PROP20)
brain.screen.print("Prop Medium")
establecer_ancho_de_pluma#
set_pen_width
establece el ancho del lápiz utilizado para dibujar líneas y formas.
Uso:
brain.screen.set_pen_width(ancho)
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 two circles with different pen widths
brain.screen.draw_circle(40, 70, 20)
brain.screen.set_pen_width(5)
brain.screen.draw_circle(100, 70, 20)
establecer_color_de_pluma#
set_pen_color
establece el color del lápiz utilizado para dibujar líneas, formas y texto.
Uso:
brain.screen.set_pen_color(color)
Parámetro |
Descripción |
---|---|
|
Opcional. Establece el color del lápiz. Las opciones incluyen:
|
# Draw two rectangles with different colors
brain.screen.draw_rectangle(100, 50, 10, 20)
brain.screen.set_pen_color(Color.BLUE)
brain.screen.draw_rectangle(50, 50, 10, 20)
establecer_color_de_relleno#
El método set_fill_color
establece el color de relleno utilizado cuando se dibujan formas.
Uso:
brain.screen.set_fill_color(color)
Parámetro |
Descripción |
---|---|
|
Opcional. Establece el color de relleno. Las opciones incluyen:
|
# Draw a yellow circle
brain.screen.set_fill_color(Color.YELLOW)
brain.screen.draw_circle(50, 50, 20)
columna#
column
devuelve la columna actual donde el texto se imprimirá como un entero.
Uso:
brain.screen.column()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Set cursor to (3,2) and print column number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.column())
fila#
row
devuelve la fila actual donde el texto se imprimirá como un entero.
Uso:
brain.screen.row()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Set cursor to (3,2) and print row number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.row())
obtener_ancho_de_cadena#
get_string_width
devuelve el ancho de una cadena en píxeles, tal como aparecería en la pantalla del Cerebro. El ancho varía según la longitud de la cadena y la fuente actual.
Uso:
brain.screen.get_string_width(string)
Parámetros |
Descripción |
---|---|
|
La cuerda a medir. |
# Display the width of a string in pixels
brain.screen.print("String width ")
brain.screen.print(brain.screen.get_string_width("Hello, Robot!"))
obtener_altura_de_cadena#
get_string_height
devuelve la altura de una cadena en píxeles, tal como aparecería en la pantalla del Cerebro. El ancho varía según la longitud de la cadena y la fuente actual.
Uso:
brain.screen.get_string_height(string)
Parámetros |
Descripción |
---|---|
cadena |
La cuerda a medir. |
# Display the height of a string in pixels
brain.screen.print("String height ")
brain.screen.print(brain.screen.get_string_height("Hello, Robot!"))
borrar_pantalla#
clear_screen
borra todos los dibujos y textos de la pantalla del Cerebro.
Uso:
brain.screen.clear_screen(color)
Parámetros |
Descripción |
---|---|
color |
Opcional. Establece el color de la pantalla. Las opciones incluyen:
|
# Draw a circle and clear it after 2 seconds
brain.screen.draw_circle(80, 50, 20)
wait(2, SECONDS)
brain.screen.clear_screen()
# Turn the screen red
brain.screen.clear_screen(Color.RED)
borrar fila#
clear_row
borra una fila de dibujos y texto en la pantalla del Cerebro.
Uso:
brain.screen.clear_row(fila, color)
Parámetros |
Descripción |
---|---|
fila |
Opcional. La fila que se va a borrar. El valor predeterminado es la fila actual del cursor. |
color |
Opcional. El color que se aplicará a la fila borrada. Las opciones incluyen:
|
# Display text on two rows
brain.screen.print("This text stays")
brain.screen.next_row()
brain.screen.print("This disappears")
# Wait 3 seconds before clearing only the second row
wait(3, SECONDS)
brain.screen.clear_row()
# Turn the 5th row green
brain.screen.clear_row(5, Color.GREEN)
siguiente_fila#
next_row
mueve el cursor a la columna 1 de la siguiente fila de la pantalla del Cerebro.
Uso:
brain.screen.next_row()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Display two lines of text
brain.screen.print("Line 1")
brain.screen.next_row()
brain.screen.print("Line 2")
dibujar_píxel#
draw_pixel
dibuja un píxel en la coordenada de pantalla (x, y) especificada con el color de lápiz actual. Utiliza el color de lápiz actual definido por set_pen_color
.
Uso:
brain.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 160. |
|
La coordenada y donde se dibujará el píxel, expresada como un número entero de 0 a 108. |
# Draw one pixel at the center of the screen
brain.screen.draw_pixel(80, 50)
línea de dibujo#
draw_line
dibuja una línea desde la primera coordenada de pantalla especificada (x1, y1)
hasta la segunda coordenada de pantalla especificada (x2, y2)
. Utiliza el ancho de lápiz actual definido por set_pen_width y el color de lápiz definido por set_pen_color.
Las coordenadas x e y utilizan el origen predeterminado de (0, 0) a menos que se haya establecido un origen diferente utilizando set_origin
.
Uso:
brain.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 de 0 a 160. |
|
La coordenada y inicial de la línea, expresada como un número entero entre 0 y 108. |
|
La coordenada x final de la línea, expresada como un número entero de 0 a 160. |
|
La coordenada y final de la línea, expresada como un número entero entre 0 y 108. |
# Draw a line from the top left to bottom right of the screen
brain.screen.draw_line(0, 0, 159, 107)
dibujar_rectángulo#
draw_rectangle
dibuja un rectángulo con su esquina superior izquierda en la coordenada (x, y)
especificada y un tamaño determinado por el ancho y la altura dados, medidos en píxeles. El contorno del rectángulo se dibuja con el ancho de lápiz actual definido por set_pen_width
y el color de lápiz definido por set_pen_color
. El interior se rellena con el color definido por set_fill_color
.
Las coordenadas x e y utilizan el origen predeterminado de (0,0) a menos que se haya establecido un origen diferente utilizando set_origin.
Uso:
brain.screen.draw_rectangle(x, y, ancho, alto, 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 160. |
|
La coordenada y de la esquina superior izquierda del rectángulo, expresada como un número entero de 0 a 108. |
|
El ancho del rectángulo, expresado como un número entero de 0 a 160. |
|
La altura del rectángulo, expresada como un número entero de 0 a 108. |
|
Opcional. El color de relleno del rectángulo. Las opciones incluyen:
|
# Draw a red rectangle on the screen
brain.screen.draw_rectangle(25, 25, 100, 50, Color.RED)
dibujar_círculo#
draw_circle
dibuja un círculo con centro en la coordenada (x, y)
especificada y un tamaño determinado por el radio dado, medido en píxeles. El contorno del círculo se dibuja con el ancho de lápiz actual definido por set_pen_width
y el color de lápiz definido por set_pen_color
. El interior se rellena con el color definido por set_fill_color
.
Las coordenadas x e y utilizan el origen predeterminado de (0,0) a menos que se haya establecido un origen diferente utilizando set_origin.
Uso:
brain.screen.draw_circle(x, y, radio, color)
Parámetro |
Descripción |
---|---|
|
La coordenada x del centro del círculo, expresada como un número entero de 0 a 160. |
|
La coordenada y del centro del círculo, expresada como un número entero de 0 a 160. |
|
El radio del círculo, expresado como un número entero de 0 a 108 píxeles. |
|
Opcional. El color de relleno del círculo. Las opciones incluyen:
|
# Draw a green circle on the screen
brain.screen.draw_circle(80, 50, 20, Color.GREEN)
prestar#
render
habilita el doble buffering para la pantalla del cerebro. Una vez ejecutado, los comandos de dibujo (como texto, formas o imágenes) ya no aparecerán inmediatamente para el resto del proyecto. En su lugar, las actualizaciones solo se mostrarán cuando se vuelva a usar render
. Esto permite actualizaciones de pantalla más fluidas y controladas, pero significa que no habrá nada visible hasta que se use render
.
Uso:
brain.screen.render()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# 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()
establecer_región_de_clip#
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:
brain.screen.set_clip_region(x, y, ancho, alto)
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 160. |
|
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 108. |
|
El ancho de la región de recorte en píxeles, expresado como un número entero o flotante de 0 a 160. |
|
La altura de la región de recorte en píxeles, expresada como un entero o un punto flotante entre 0 y 108. |
# 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)