屏幕#

介绍#

EXP Brain 的屏幕在打印文本时,会设置固定的行数和列数。

默认情况下,打印到大脑的字体是等宽小号,它有7行20列。

大脑的绘图分辨率为 159 x 107 像素。

VEX Brain 屏幕的带标签网格图,显示了行、列、像素尺寸和坐标,并用红线勾勒出网格轮廓。

以下是可用方法列表:

光标打印 – 显示文本并管理打印光标。

  • print – Prints text on the screen using the current cursor position.

  • print_at – Prints text at specific x and y coordinates on the screen.

  • set_cursor – Sets the cursor position.

  • set_origin – Sets the origin used for drawing graphics on the Brain’s screen.

  • next_row – Moves the cursor to the next row.

  • clear_row – Clears a row to a single color.

  • row – Returns the current row where text will be printed.

  • column – Returns the current column where text will be printed.

  • get_string_width – Gets the width of a string in pixels as if it was on the Brain’s screen.

  • get_string_height – Gets the height of a string in pixels as if it was on the Brain’s screen.

设置 – 更改文本和图形的外观。

  • clear_screen – Clears the whole Brain’s screen to a single color.

  • set_font – Sets the font type used for printing text on the Brain’s screen.

  • set_pen_width – Sets the pen width used for drawing lines, rectangles and circles.

  • set_pen_color – Sets the pen color used for drawing lines, rectangles and circles.

  • set_fill_color – Sets the fill color used for drawing rectangles and circles.

绘图 – 在大脑屏幕上创建形状、线条和图形。

光标打印#

print#

print prints text on the screen using the current cursor position.

用法:

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

参数

描述

text

要打印的文本。

sep

Optional. A string to inset between values. This must be written as a keyword argument (sep=). The default is “”.

precision

Optional. The number of decimal places to display when printing simple numbers. This must be written as a keyword argument(precision=). The default is 2.

brain.screen.print("Hello, Robot!")

EXP Brain 的屏幕截图,显示屏幕上打印着“Hello Robot”。

# Print the number 1 on the Brain's screen at current
# cursor position.
brain.screen.print(1)

# Print the numbers 1, 2, 3 and 4 on the Brain's screen at
# current cursor position separated by a '-'.
brain.screen.print(1, 2, 3, 4, sep='-')

set_cursor#

set_cursor sets the cursor position. The row and column spacing will take into account the selected font. The default cursor position is Row 1, Column 1.

用法:

brain.screen.set_cursor(row, column)

参数

描述

row

要将光标设置到的行。

column

要将光标设置到的列。

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

EXP Brain 的屏幕截图,显示屏幕上打印着“R3,C10”。

set_origin#

set_origin sets the origin used for drawing graphics on the Brain’s screen. Drawing functions consider the top left corner of the Brain’s screen as the origin. This function can move the origin to an alternate position such as the center of the Brain’s screen.

用法:

brain.screen.set_origin(x, y)

参数

描述

x

原点相对于左上角的 x 坐标。

y

原点相对于左上角的 y 坐标。

next_row#

next_row moves the cursor to the next row.

用法:

brain.screen.next_row()

参数

描述

此方法没有参数。

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

EXP Brain 的屏幕截图,显示第 3 行的文本“3”。

clear_row#

clear_row clears a row to a single color.

用法:

brain.screen.clear_row(row)

参数

描述

row

可选。要清除的行。默认值为当前光标所在行。

color

Optional. A valid ColorType, a hex value, or a web string.

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

# Clear Brain's screen to black.
brain.screen.clear_row()

# Clear Brain's screen to blue using predefined color.
brain.screen.clear_row(2, Color.BLUE)

row#

row returns the current row where text will be printed as an integer.

用法:

brain.screen.row()

参数

描述

此方法没有参数。

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

EXP Brain 的屏幕截图,显示第 3 行的文本“3”。

column#

column returns the current column where text will be printed as an integer.

用法:

brain.screen.column()

参数

描述

此方法没有参数。

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

EXP Brain 的屏幕截图,显示第 10 列的文本“10”。

get_string_width#

get_string_width gets the width of a string in pixels as if it was on the Brain’s screen. The width of a string changes based on the length of the string and the size of the font.

用法:

brain.screen.get_string_width(string)

参数

描述

string

待测量的绳子。

get_string_height#

get_string_height gets the height of a string in pixels as if it was on the Brain’s screen. The height of a string changes based on the length of the string and the size of the font.

用法:

brain.screen.get_string_height(string)

参数

描述

string

待测量的绳子。

变异体#

clear_screen#

clear_screen clears the whole Brain’s screen to a single color.

用法:

brain.screen.clear_screen(color)

参数

描述

color

Optional. A valid ColorType, a hex value, or a web string.

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

# Print VEXcode on the Brain's screen.
brain.screen.print("VEXcode")

# Clear screen to black.
brain.screen.clear_screen()

# Print VEXcode on the Brain's screen.
brain.screen.print("VEXcode")

# Clear screen to blue using predefined color.
brain.screen.clear_screen(Color.BLUE)

set_font#

set_font sets the font type used for printing text on the Brain’s screen.

用法:

brain.screen.set_font(fontname)

参数

描述

fontname

The font size (examples below):

  • MONO12
  • MONO15
  • MONO20
  • MONO30
  • MONO40
  • MONO60
  • PROP20
  • PROP30
  • PROP40
  • PROP60
Note: Extra small and small sizes are not available for proportional fonts.

大脑显示屏上用单字12号字体丝网印刷了数字和字母,显示了A到Z以及所有数字。屏幕底部显示“9行,26列”。
MONO12

大脑屏幕上以单字 15 号字体丝网印刷数字和字母,显示字母 A 到 T 以及所有数字。屏幕底部显示“7 行,22 列”。
MONO15

大脑屏幕上以单字 20 号字体印刷数字和字母,显示字母 A 到 P 以及所有数字。屏幕底部显示“5 行 16 列”。
MONO20

大脑的屏幕以 MONO 30 字体印刷数字和字母,显示 A 到 J。屏幕底部显示 R:3 C:10。
MONO30

大脑的屏幕底部印有单字 40 号字体的数字和字母。屏幕底部写着 R:2 C:8。
MONO40

大脑上的数字和字母采用丝网印刷,字体大小为 MONO 60。仅显示 MON60。
MONO60

大脑屏幕上以 PROP 20 字体大小印刷数字和字母,显示字母 A 到 W 以及所有数字。屏幕底部显示“5 行,16 列”。
PROP20

大脑的屏幕以 PROP 30 字体大小印刷数字和字母,显示 A 到 P。屏幕底部显示 R:3 C:10。
PROP30

大脑的屏幕底部印有 PROP 40 字体大小的数字和字母。屏幕底部写着 R:2 C:8。
PROP40

大脑上的数字和字母采用 PROP 60 字体,并以丝网印刷方式呈现。仅显示 PROP60。
PROP60

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

EXP Brain 的屏幕截图,显示“VEX”字样的字体比默认字体更大。

set_pen_width#

set_pen_width sets the pen width used for drawing lines, rectangles and circles.

用法:

brain.screen.set_pen_width(width)

参数

描述

width

笔的宽度。

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

EXP Brain 的屏幕截图,显示一个带有粗边框的矩形。

set_pen_color#

set_pen_color sets the pen color used for drawing lines, rectangles and circles.

用法:

brain.screen.set_pen_color(color)

参数

描述

color

A valid ColorType, a hex value, or a web string.

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

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

EXP Brain 的屏幕截图,显示一个带有橙色边框的矩形。

# Set pen color red using a hex value.
brain.screen.set_pen_color(0xFF0000)

# Set pen color blue using predefined color.
brain.screen.set_pen_color(Color.BLUE)

# Set pen color green using web string.
brain.screen.set_pen_color("#00FF00")

set_fill_color#

set_fill_color sets the fill color used for drawing rectangles and circles.

用法:

brain.screen.set_fill_color(color)

参数

描述

color

A valid ColorType, a hex value, or a web string.

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

# Draw a purple rectangle.
brain.screen.set_fill_color(Color.PURPLE)
brain.screen.draw_rectangle(20, 20, 75, 50)

EXP Brain 的屏幕截图,显示一个填充紫色的矩形。

# Set pen color red using a hex value.
brain.screen.set_fill_color(0xFF0000)

# Set pen color blue using predefined color.
brain.screen.set_fill_color(Color.BLUE)

# Set pen color green using web string.
brain.screen.set_fill_color("#00FF00")

#

draw_pixel#

draw_pixel draws a pixel using the current pen color.

用法:

brain.screen.draw_pixel(x, y)

参数

描述

x

相对于屏幕原点的 x 坐标,用于绘制像素。

y

相对于屏幕原点的 y 坐标,用于绘制像素。

# Draw the pixels marking the corners of a square.
brain.screen.draw_pixel(50, 50)
brain.screen.draw_pixel(50, 75)
brain.screen.draw_pixel(75, 50)
brain.screen.draw_pixel(75, 75)

EXP Brain 的屏幕截图,显示了构成正方形各个角点的像素组合。

draw_line#

draw_line draws a line using the current pen color.

用法:

brain.screen.draw_line(x1, y1, x2, y2)

参数

描述

x1

以屏幕原点为参考的行起始点的 x 坐标。

y1

该线段起始点相对于屏幕原点的 y 坐标。

x2

线段末端相对于屏幕原点的 x 坐标。

y2

线段末端相对于屏幕原点的 y 坐标。

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

大脑屏幕中央出现一条细斜线,从左上角延伸到右下角。

draw_rectangle#

draw_rectangle draws a rectangle on the screen using the current pen and fill colors.

用法:

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

参数

描述

x

矩形左上角相对于屏幕原点的 x 坐标。

y

矩形左上角点的 y 坐标相对于屏幕原点的位置。

width

矩形的宽度。

height

矩形的高度。

color

Optional. A valid ColorType, a hex value, or a web string.

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

# Draw a rectangle on the screen.
brain.screen.draw_rectangle(20, 20, 80, 30)

大脑屏幕上显示一个带有细白边框的矩形。

# Draw a green rectangle on the screen that is filled using blue.
brain.screen.set_pen_color(Color.GREEN)
brain.screen.set_fill_color(Color.BLUE)
brain.screen.draw_rectangle(10, 10, 20, 20)

# Draw a green rectangle on the screen that is filled using red.
brain.screen.set_pen_color(Color.GREEN)
brain.screen.draw_rectangle(50, 50, 20, 20, Color.RED)

draw_circle#

draw_circle draws a circle using the current pen and fill colors.

用法:

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

参数

描述

x

圆心相对于屏幕原点的 x 坐标。

y

圆心相对于屏幕原点的 y 坐标。

radius

圆的半径。

color

Optional. A valid ColorType, a hex value, or a web string.

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

# Draw a circle on the screen.
brain.screen.draw_circle(80, 50, 20)

大脑屏幕上显示一个中心画有细白边的圆圈。

# Draw a green circle on the Brain's screen that is filled using blue.
brain.screen.set_pen_color(Color.GREEN)
brain.screen.set_fill_color(Color.BLUE)
brain.screen.draw_circle(50, 50, 10)

# Draw a green circle on the Brain's screen that is filled using red.
brain.screen.set_pen_color(Color.GREEN)
brain.screen.draw_circle(100, 50, 10, Color.RED)

draw_image_from_file#

draw_image_from_file draws an image from the SD card. The filename you put when calling the method must be located on the SD card.

用法:

brain.screen.draw_image_from_file(filename, x, y)

参数

描述

filename

图片的文件名。

x

屏幕上图像左上角的 x 坐标。

y

屏幕上图像左上角的 y 坐标。

# Draw the vex.bmp image on the Brain's screen at coordinate 0, 0.
brain.screen.draw_image_from_file('vex.bmp', 0, 0)

render#

render switches drawing to double buffered and renders the Brain’s screen. Once called, further drawing will not appear on the Brain’s screen until the next time render is called.

  • True if buffer was successfully rendered to the screen.

  • False if buffer was not successfully rendered to the screen.

用法:

brain.screen.render()

参数

描述

此方法没有参数。

set_clip_region#

set_clip_region sets the clip region for drawing the supplied rectangle.

用法:

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

参数

描述

x

矩形左上角的 x 坐标,以屏幕原点为参考。

y

矩形左上角的 y 坐标,以屏幕原点为参考。

width

矩形的宽度。

height

矩形的高度。