화면#

소개#

화면 표시 방식은 IQ(2세대) 브레인이 내장 화면에 텍스트, 숫자 및 그래픽을 표시하는 방식을 제어합니다.

그림을 그릴 때 브레인의 해상도는 160 x 108 픽셀입니다.

이 페이지에서는 예시 Brain 이름으로 brain 사용합니다. 필요에 따라 구성된 이름으로 바꾸십시오.

다음은 모든 방법 목록입니다.

커서 인쇄 - 텍스트를 배치하고 인쇄합니다.

  • print — 현재 커서 위치에 텍스트, 숫자 또는 변수 값을 출력합니다.

  • set_cursor — 커서를 특정 행과 열로 이동합니다.

  • next_row — 커서를 다음 행의 1열로 이동합니다.

  • clear_row — 텍스트 행을 지웁니다.

  • row — 텍스트가 출력될 행을 반환합니다.

  • column — 텍스트가 출력될 열을 반환합니다.

  • print_at — 특정 x 및 y 좌표에 텍스트, 숫자 또는 변수 값을 출력합니다.

  • get_string_width — 현재 글꼴을 사용하여 문자열의 너비를 픽셀 단위로 반환합니다.

  • get_string_height — 현재 글꼴을 사용하여 문자열의 높이를 픽셀 단위로 반환합니다.

뮤테이터 — 화면 설정, 색상 및 그리기 동작을 변경합니다.

  • clear_screen — 화면의 모든 그림과 텍스트를 지웁니다.

  • set_font — 인쇄된 텍스트의 글꼴을 설정합니다.

  • set_pen_width — 그려진 선과 도형 윤곽선의 두께를 설정합니다.

  • set_pen_color — 텍스트, 픽셀, 선 및 도형 윤곽선의 색상을 설정합니다.

  • set_fill_color — 그려진 도형과 인쇄된 텍스트 배경의 채우기 색상을 설정합니다.

  • set_origin — 좌표 기반 인쇄 및 그리기에 사용되는 원점을 설정합니다.

그리기 — 화면에 그래픽을 추가합니다.

  • draw_pixel — 좌표에 픽셀 하나를 그립니다.

  • draw_line — 두 점 사이에 선을 그립니다.

  • draw_rectangle — 사각형을 그립니다.

  • draw_circle — 원을 그립니다.

  • set_clip_region — 그림과 텍스트가 나타날 수 있는 위치를 제한합니다.

  • render — 호출될 때만 텍스트와 그림으로 브레인의 화면을 업데이트합니다.

커서 인쇄#

print#

print 은 현재 커서 위치 및 글꼴에 있는 Brain 화면에 텍스트, 숫자 또는 변수 값을 출력합니다.

Usage:
brain.screen.print(text, precision, opaque)

매개변수

설명

text

화면에 출력할 텍스트, 숫자 또는 변수 값입니다.

precision

선택 사항입니다. 숫자를 표시할 때 소수점 이하 자릿수를 지정합니다. 이 값은 키워드 인수로 작성해야 합니다. 예:precision=3기본값은 2입니다.

opaque

선택 사항. opaque=True — 텍스트의 배경은 현재 채우기 색상 또는 기본적으로 검정색으로 채워집니다. opaque=False (기본값) — 텍스트의 배경은 화면의 배경색과 일치합니다.

# Display a message at the starting
# cursor position
brain.screen.print("Hello, Robot!")

VEX IQ Brain 화면의 스크린샷에는 첫 번째 줄에 흰색 텍스트로 "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)

set_cursor#

set_cursor Brain 화면의 특정 행과 열로 커서를 이동합니다. 다음 print 호출은 해당 위치에서 인쇄를 시작합니다. 편안하게 들어갈 수 있는 행과 열의 수는 선택한 글꼴에 따라 다릅니다.

고정폭 글꼴은 문자의 너비가 모두 같으므로 텍스트 배치가 일관적입니다. 이와 대조적으로 비례 글꼴은 문자 너비가 다양하므로 일부 문자는 다른 문자보다 더 많은 공간을 차지합니다. 그러나 어떤 유형을 사용하든 set_cursor 글꼴 스타일이 아닌 행과 열 크기를 기준으로 커서를 배치합니다. 글꼴 크기는 set_font를 사용하여 조정할 수 있습니다.

Usage:
brain.screen.set_cursor(row, column)

매개변수

설명

row

커서를 이동할 행입니다.

column

커서를 이동할 열입니다.

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

IQ Brain 화면의 스크린샷 왼쪽 상단에 흰색 글씨로 23.19가 표시되어 있습니다.

next_row#

next_row 브레인 화면의 다음 행의 1번째 열로 커서를 이동합니다.

Usage:
brain.screen.next_row()

매개변수

설명

이 메서드에는 매개변수가 없습니다.

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

IQ Brain 화면의 스크린샷에는 왼쪽 상단 모서리에 흰색 텍스트로 Line 1이 표시되고 그 바로 아래에 Line 2가 표시됩니다.

clear_row#

clear_row Brain 화면에서 한 줄의 텍스트를 지웁니다.

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

매개변수

설명

열

선택 사항입니다. 지울 행을 지정합니다. 기본값은 현재 커서가 있는 행입니다.

색상

Optional. The color to apply to the cleared row. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

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

row#

row 텍스트가 정수로 출력될 행을 반환합니다.

Usage:
brain.screen.row()

매개변수

설명

이 메서드에는 매개변수가 없습니다.

# Set cursor to (3,2) and print 
# row number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.row())

화면 맨 왼쪽에 흰색 숫자 3이 세로로 가운데 정렬되어 3행 2열에 인쇄된 IQ Brain 화면의 스크린샷입니다.

column#

column 은 텍스트가 정수로 출력될 열을 반환합니다.

Usage:
brain.screen.column()

매개변수

설명

이 메서드에는 매개변수가 없습니다.

# Set cursor to (3,2) and print 
# column number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.column())

화면 맨 왼쪽, 세로 중앙, 3행 2열 위치에 흰색 숫자 2가 인쇄된 IQ Brain 화면의 스크린샷.

get_string_width#

get_string_width Brain의 화면에 나타나는 것처럼 문자열의 너비를 픽셀 단위로 정수로 반환합니다. 너비는 문자열의 길이와 현재 글꼴에 따라 달라집니다.

Usage:
brain.screen.get_string_width(string)

매개변수

설명

string

측정할 줄.

get_string_height#

get_string_height Brain 화면에 나타나는 것처럼 문자열의 높이를 픽셀 단위로 정수로 반환합니다. 높이는 문자열의 길이와 현재 글꼴에 따라 달라집니다.

Usage:
brain.screen.get_string_height(string)

매개변수

설명

string

측정할 줄.

돌연변이체#

clear_screen#

clear_screen 브레인의 화면에서 모든 그림과 텍스트를 지웁니다.

Usage:
brain.screen.clear_screen(color)

매개변수

설명

color

Optional. Sets the screen color. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

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

인쇄 가능 영역 전체가 밝은 빨간색으로 표시된 IQ Brain 화면의 스크린샷.

set_font#

set_font 은 Brain 화면에 텍스트를 표시하는 데 사용되는 글꼴을 설정합니다. 이 글꼴은 print 또는 print_at로 인쇄되는 모든 텍스트에 적용됩니다. 프로젝트 시작 시 기본 글꼴은 MONO20 입니다.

Usage:
brain.screen.set_font(fontname)

매개변수

설명

fontname

Sets the font to one of the following:

  • MONO12
  • MONO15
  • MONO20
  • MONO30
  • MONO40
  • MONO60
  • PROP20
  • PROP30
  • PROP40
  • PROP60
These options are shown below.

VEX IQ Brain 화면의 스크린샷으로, Mono 12 글꼴로 숫자와 문자가 나열되어 있습니다. 문자 AZ는 화면 전체 너비에 걸쳐 한 줄로 표시되어 있습니다. 왼쪽 하단에는 가로 26자, 세로 9줄을 나타냅니다.
MONO12

이전 스크린샷과 동일하지만, Mono 15 글꼴이 적용되었습니다. AT라는 글자가 한 줄에 화면 전체 너비로 표시됩니다. 왼쪽 하단에는 가로 20자, 세로 7줄을 나타냅니다.
MONO15

이전 스크린샷과 동일하지만, Mono 20 글꼴이 적용되었습니다. AP라는 글자가 한 줄에 화면 전체 너비로 표시되어 있습니다. 왼쪽 하단에는 가로 16자, 세로 5줄을 나타냅니다.
MONO20

이전 스크린샷과 동일하지만, Mono 30 글꼴이 적용되었습니다. 1부터 9까지의 숫자와 추가 0이 한 줄에 화면 전체 너비로 표시됩니다. 왼쪽 하단 모서리는 3행을 나타냅니다.
MONO30

이전 스크린샷과 동일하지만, Mono 40 글꼴을 사용했습니다. 1부터 8까지의 숫자가 두 번째 줄에 화면 전체 너비로 표시됩니다.
MONO40

이전 스크린샷과 동일한 스크린샷이지만, 이번에는 Mono 60 글꼴이 적용되었습니다. 화면에는 MN 60이라는 글자가 큰 글꼴로 표시되어 화면 상단 절반을 거의 차지하고 있습니다.
MONO60

이전 스크린샷과 동일하지만 Prop 20 글꼴이 적용되었습니다. AW라는 글자가 한 줄로 화면 전체 너비에 걸쳐 있습니다. 왼쪽 하단에는 가로 26자, 세로 5줄을 나타냅니다.
PROP20

이전 스크린샷과 동일하지만 Prop 30 글꼴이 적용되었습니다. 숫자 1-9가 한 줄에 두 번씩 반복되어 화면 전체 너비를 차지합니다. 왼쪽 하단에는 가로 18자, 세로 3줄을 나타냅니다.
PROP30

이전 스크린샷과 동일하지만 Prop 40 글꼴이 적용되었습니다. 화면의 첫 번째 줄에는 Prop 40이라고 표시되어 있고 두 번째 줄에는 14자, 2행이라고 표시되어 있습니다.
PROP40

이전 스크린샷과 동일한 스크린샷이지만, 이번에는 Prop 60 글꼴이 적용되었습니다. 화면에는 PROP 60이라는 글자가 큰 글꼴로 표시되어 화면 상단 절반을 거의 다 차지하고 있습니다.
PROP60

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

왼쪽 상단 모서리에 흰색 글씨로 두 줄이 표시된 IQ Brain 화면의 스크린샷입니다. 첫 번째 줄에는 Mono Medium이라고 쓰여 있고, 바로 아래 두 번째 줄에는 더 작은 글꼴로 Prop Medium이라고 쓰여 있습니다.

set_pen_width#

set_pen_width 그려진 선과 도형 윤곽선의 두께를 설정합니다.

Usage:
brain.screen.set_pen_width(width)

매개변수

설명

width

펜 너비는 픽셀 단위로 0에서 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)

화면 하단에 흰색 원 두 개가 인쇄된 IQ Brain 화면의 스크린샷입니다. 왼쪽 원은 오른쪽 원보다 테두리가 더 좁게 그려져 있습니다.

set_pen_color#

set_pen_color 텍스트, 픽셀, 선 및 도형 윤곽선의 색상을 설정합니다.

Usage:
brain.screen.set_pen_color(color)

매개변수

설명

color

선택 사항입니다. 사용할 펜과 글꼴 색상을 지정합니다. 옵션은 다음과 같습니다:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
사용자 지정 색상을 지정할 수도 있습니다.

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

화면 하단에 작은 사각형 두 개가 그려진 IQ Brain 화면의 스크린샷입니다. 왼쪽 사각형은 파란색이고 오른쪽 사각형은 흰색입니다.

set_fill_color#

set_fill_color 도형을 그릴 때 사용되는 채우기 색상을 설정합니다.

Usage:
brain.screen.set_fill_color(color)

매개변수

설명

color

Optional. The fill color to use. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# Draw a yellow circle
brain.screen.set_fill_color(Color.YELLOW)
brain.screen.draw_circle(50, 50, 20)

화면 왼쪽 절반에 얇은 흰색 테두리가 있는 밝은 노란색 원이 그려진 IQ Brain 화면의 스크린샷.

set_origin#

set_origin 은 Brain 화면에서 그리기 및 좌표 기반 인쇄에 사용되는 원점을 설정합니다. 기본적으로 원점은 화면의 왼쪽 상단 모서리입니다.

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

매개변수

설명

x

원점으로 설정할 새로운 x 좌표는 0에서 159 사이의 정수로 주어집니다.

y

원점으로 설정할 새로운 y 좌표는 0에서 107 사이의 정수로 주어집니다.

# Draw a line with the origin set to (50, 50)
brain.screen.set_origin(50, 50)
brain.screen.draw_line(1, 1, 159, 107)

화면 중앙에서 약간 왼쪽에 시작하여 화면 오른쪽 아래 모서리를 향해 대각선으로 오른쪽으로 뻗어 있는 흰색 선이 있는 IQ Brain 화면의 스크린샷입니다.

그리다#

draw_pixel#

draw_pixel 현재 펜 색상을 사용하여 선택된 x 및 y 좌표에 픽셀 하나를 그립니다.

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

매개변수

설명

x

픽셀이 그려질 x 좌표이며, 0에서 159 사이의 정수로 주어집니다.

y

픽셀이 그려질 y 좌표이며, 0에서 107 사이의 정수로 주어집니다.

# Draw one pixel at the center
# of the screen
brain.screen.draw_pixel(80, 50)

화면 중앙에 작은 흰색 점이 있는 IQ Brain 화면의 스크린샷입니다.

draw_line#

draw_line 은 현재 펜 너비 및 펜 색상을 사용하여 첫 번째 화면 좌표 (x1, y1) 에서 두 번째 화면 좌표 (x2, y2) 까지 선을 그립니다.

x 및 y 좌표는 set_origin를 사용하여 다른 원점을 설정하지 않는 한 기본 원점 (0, 0)을 사용합니다.

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

매개변수

설명

x1

선분의 시작 x좌표는 0부터 159까지의 정수로 주어집니다.

y1

직선의 시작 y 좌표는 0에서 107 사이의 정수로 주어집니다.

x2

선분의 끝점의 x좌표는 0부터 159까지의 정수로 주어집니다.

y2

직선의 끝 y좌표는 0에서 107 사이의 정수로 주어집니다.

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

왼쪽 위 모서리에서 오른쪽 아래 모서리까지 흰색 대각선이 그려진 IQ Brain 화면의 스크린샷.

draw_rectangle#

draw_rectangle 선택된 (x, y) 좌표에 왼쪽 상단 모서리가 있고 주어진 너비와 높이로 결정되는 크기의 직사각형을 그립니다. 모든 치수는 픽셀 단위로 측정됩니다. 직사각형의 윤곽선은 현재 펜 너비와 펜 색상을 사용하여 그려집니다. 내부는 선택적 color 매개변수가 사용되지 않는 한 현재 채우기 색상으로 채워집니다.

x 및 y 좌표는 set_origin를 사용하여 다른 원점을 설정하지 않는 한 기본 원점 (0,0)을 사용합니다.

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

매개변수

설명

x

직사각형의 왼쪽 위 모서리의 x좌표를 0부터 159까지의 정수로 나타냅니다.

y

직사각형의 왼쪽 위 모서리의 y좌표를 0부터 107까지의 정수로 나타냅니다.

width

직사각형의 너비(픽셀 단위).

height

직사각형의 높이(픽셀 단위).

color

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

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# Draw a red rectangle on the screen
brain.screen.draw_rectangle(25, 25, 100, 50, Color.RED)

화면 중앙에 얇은 흰색 테두리가 있는 큰 빨간색 사각형이 그려진 IQ Brain 화면의 스크린샷입니다.

draw_circle#

draw_circle 은 선택된 (x, y) 좌표를 중심으로 하고 주어진 반지름으로 결정되는 크기의 원을 그립니다. 모든 값은 픽셀 단위로 측정됩니다. 원의 윤곽선은 현재 펜 너비와 펜 색상을 사용하여 그려집니다. 내부는 현재 채우기 색상으로 채워집니다. 단, 선택적 color 매개변수가 사용되는 경우는 예외입니다.

x 및 y 좌표는 set_origin를 사용하여 다른 원점을 설정하지 않는 한 기본 원점 (0,0)을 사용합니다.

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

매개변수

설명

x

원의 중심의 x좌표는 0부터 159까지의 정수로 주어집니다.

y

원의 중심의 y좌표는 0부터 107까지의 정수로 주어집니다.

radius

원의 반지름(픽셀 단위).

color

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

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

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

화면 중앙에 얇은 흰색 테두리가 있는 녹색 원이 있는 IQ Brain 화면의 스크린샷입니다.

set_clip_region#

set_clip_region 은 화면에서 모든 그림과 텍스트가 표시될 직사각형 영역을 정의합니다. 이 영역 밖의 콘텐츠는 표시되지 않습니다.

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

매개변수

설명

x

클립 영역의 왼쪽 상단 모서리의 x 좌표를 0에서 159 사이의 정수 또는 실수 값으로 입력합니다.

y

클립 영역의 왼쪽 상단 모서리의 y 좌표를 0에서 107 사이의 정수 또는 실수 값으로 입력합니다.

width

클립 영역의 너비(픽셀 단위).

height

클립 영역의 높이(픽셀 단위).

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

화면 중앙 부근에 흰색 글씨로 "잘라내기"라고 쓰여 있고 그 바로 아래에 빨간색 사각형이 있는 IQ Brain 화면의 스크린샷입니다. 이 사각형은 클립 영역에 인쇄되는 내용을 보여줍니다.

render#

render Brain 화면에 더블 버퍼링을 활성화합니다. 이 함수가 호출되면 텍스트, 도형 또는 이미지와 같은 모든 그리기 명령은 프로젝트의 나머지 기간 동안 즉시 표시되지 않습니다. 대신, render 다시 사용될 때만 업데이트된 내용이 표시됩니다. 이를 통해 더욱 부드럽고 제어된 화면 업데이트가 가능하지만, render 사용될 때까지는 아무것도 보이지 않게 됩니다.

Usage:
brain.screen.render()

매개변수

설명

이 메서드에는 매개변수가 없습니다.

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