Екран#
Вступ#
Методи Screen контролюють, як робот-кодувальник VEX AIM відображає текст, числа та графіку на екрані, а також як він реагує на натискання клавіш на екрані.
Нижче наведено список усіх методів:
Сенсорний екран – Виявлення та реагування на натискання.
pressing– Повертає, чи натискається екран у даний момент.x_position– Повертає x-координату останнього натискання екрана.y_position– Повертає y-координату останнього натискання екрана.
Друк курсора – відображення тексту за допомогою системи рядків/стовпців.
print– Друкує текст, числа або значення змінних у поточній позиції курсора.set_cursor– Переміщує курсор до певного рядка та стовпця.next_row– Переміщує курсор до стовпця 1 наступного рядка.clear_row– Очищає рядок тексту.get_row– Повертає поточний рядок курсора.get_column– Повертає поточний стовпець курсора.
Друк XY – Відображення тексту за певною координатою екрана.
print_at– Друкує текст, числа або значення змінних за певними координатами x та y.set_origin– Встановлює початок координат, що використовується для друку та малювання на основі координат.
Мутатори – Очистіть екран або оновіть візуальні налаштування.
clear_screen– Очищає екран від усіх малюнків і тексту.set_font– Встановлює шрифт для друкованого тексту.set_pen_width– Встановлює товщину намальованих ліній та контурів фігур.set_pen_color– Встановлює колір тексту, пікселів, ліній та контурів фігур.set_fill_color– Встановлює колір заливки для намальованих фігур та фону друкованого тексту.
Малювання – додавання графіки та зображень на екран.
draw_pixel– Малює піксель у певній позиції x та y.draw_line– Малює лінію між двома точками.draw_rectangle– Малює прямокутник.draw_circle– Малює коло.show_file– Відображає завантажене зображення.set_clip_region– Обмежує, де можуть відображатися малюнки та текст.
Зворотні виклики – Запускають функції, коли екран натискається або відпускається.
Дотик#
pressing#
pressing повертає логічне значення, яке вказує, чи натискається екран робота в даний момент.
True– На екран натискають.False– Екран не натискається.
Usage:
robot.screen.pressing()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# 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 повертає x-координату останнього натискання на екран як ціле число від 0 (ліворуч) до 240 (праворуч).
Usage:robot.screen.x_position()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# 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 повертає y-координату останнього натискання на екран як ціле число від 0 (зверху) до 240 (знизу).
Usage: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)
Курсор друку#
print#
print друкує текст, числа або значення змінних на екрані робота в поточних позиціях позиція курсора та шрифт.
Usage:robot.screen.print(text)
Параметри |
Опис |
|---|---|
|
Текст, число або значення змінної, яке потрібно відобразити на екрані. |
# Display a message at the starting cursor position
robot.screen.print("Hello, Robot!")

set_cursor#
set_cursor переміщує текстовий курсор до певного рядка та стовпця на екрані робота. Наступний виклик print почне друк у цьому місці. Кількість рядків та стовпців, що поміщаються, залежить від вибраного шрифту. Зі стандартним моноширинним середнім шрифтом екран може чітко відображати до 8 рядків та 13 стовпців. Текст, розміщений за межами цього діапазону, може бути обрізаним або важче читатися.
Моноширинні шрифти мають символи однакової ширини, що забезпечує узгоджене розміщення тексту. Натомість, пропорційні шрифти відрізняються шириною символів, тому деякі літери займають більше місця, ніж інші. Однак, незалежно від того, який тип використовується, set_cursor позиціонує курсор на основі розміру рядка та стовпця, а не стилю шрифту. Розмір шрифту можна налаштувати за допомогою set_font.
Usage:robot.screen.set_cursor(row, column)
Параметри |
Опис |
|---|---|
|
Рядок, до якого потрібно перемістити курсор. |
|
Стовпець, до якого потрібно перемістити курсор. |
# 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 переміщує курсор до колонки 1 наступного рядка на екрані робота.
Usage:robot.screen.next_row()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# Display two lines of text
robot.screen.print("Line 1")
robot.screen.next_row()
robot.screen.print("Line 2")

clear_row#
clear_row очищає один рядок тексту на екрані робота.
Usage:robot.screen.clear_row(row, color)
Параметр |
Опис |
|---|---|
|
Необов’язково. Рядок, який потрібно очистити як ціле число. За замовчуванням використовується поточний рядок курсора. |
|
Необов’язково. Колір, який слід застосувати до очищеного рядка. Варіанти:
|
# 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 повертає поточний рядок, де текст буде надруковано як ціле число.
Usage:robot.screen.get_row()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# 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 повертає поточний стовпець, у якому текст буде надруковано як ціле число.
Usage:robot.screen.get_column()
Параметри |
Опис |
|---|---|
Цей метод не має параметрів. |
# Set cursor to (3,2) and print column number
robot.screen.set_cursor(3, 2)
robot.screen.print(robot.screen.get_column())

Друк XY#
print_at#
print_at друкує текст, числа або значення змінних на екрані робота за певними координатами x та y у пікселях, використовуючи поточні встановлені значення font та origin. x встановлює, наскільки далеко від лівого краю починається текст, а y встановлює, де знаходиться нижня частина літер. Цей метод ігнорує поточну позицію курсора.

Примітка: Червоне коло показує, які координати будуть видимі на круглому екрані робота AIM. Координати, що знаходяться за межами червоного кола, знаходяться в діапазоні 0–240, але не відображатимуться на екрані.
Usage:
robot.screen.print_at(text, x, y)
Параметр |
Опис |
|---|---|
|
Текст, число або значення змінної, яке потрібно вивести на екран. |
|
Горизонтальне положення тексту, як ціле число від 0 до 240 пікселів. 0 — ліворуч; 240 — праворуч. |
|
Вертикальне положення тексту, як ціле число від 0 до 240 пікселів. 0 – верх; 240 – низ. |
# Display a message in the middle of the screen
robot.screen.print_at("Hello, Robot!", x=40, y=120)

set_origin#
set_origin встановлює початок координат, що використовується для малювання та друку на основі координат на екрані робота. За замовчуванням початком координат є верхній лівий кут екрана.
Usage:
robot.screen.set_origin(x, y)
Параметр |
Опис |
|---|---|
|
Нова координата x, яку потрібно встановити як початок координат, задана як ціле число від 0 до 240. |
|
Нова координата y, яку потрібно встановити як початок координат, задана як ціле число від 0 до 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)

Мутатори#
clear_screen#
clear_screen очищає всі малюнки та текст з екрана робота. За замовчуванням також скидає позицію курсора до рядка 1, стовпця 1.
Usage:
robot.screen.clear_screen(color)
Параметр |
Опис |
|---|---|
|
Необов’язково. Встановлює колір екрана. Варіанти включають:
|
# 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 встановлює шрифт, який використовується для відображення тексту на екрані робота. Цей шрифт застосовуватиметься до всього тексту, надрукованого за допомогою print або print_at. Шрифт за замовчуванням на початку проєкту — MONO24.
Usage:
robot.screen.set_font(fontname)
Параметр |
Опис |
|---|---|
|
Sets the font to one of the following:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
# Display text using a larger font
robot.screen.set_font(MONO40)
robot.screen.print("VEX")

set_pen_width#
set_pen_width встановлює товщину намальованих ліній та контурів фігур.
Usage:
robot.screen.set_pen_width(width)
Параметр |
Опис |
|---|---|
|
Ширина пера, у пікселях, від 0 до 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 встановлює колір тексту, пікселів, ліній та контурів фігур.
Usage:
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#
set_fill_color встановлює колір заливки, який використовується під час малювання фігур та коли друкований текст використовує фон.
Usage: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")

Нічия#
draw_pixel#
draw_pixel малює один піксель у вибраних координатах x та y, використовуючи поточний колір пера.
Usage:
robot.screen.draw_pixel(x, y)
Параметр |
Опис |
|---|---|
|
Координата x, де буде намальовано піксель, задана як ціле число від 0 до 240. |
|
Координата Y, де буде намальовано піксель, задана як ціле число від 0 до 240. |
# Draw a pixel at the center of the screen
robot.screen.draw_pixel(120, 120)
![]()
draw_line#
draw_line малює лінію від першої екранної координати (x1, y1) до другої екранної координати (x2, y2) використовуючи поточні значення ширина пера та колір пера.
Координати x та y використовують початковий пункт за замовчуванням (0, 0), якщо не було встановлено інший початковий пункт за допомогою set_origin.
Usage:
robot.screen.draw_line(x1, y1, x2, y2)
Параметр |
Опис |
|---|---|
|
Початкова x-координата лінії, задана як ціле число від 0 до 240. |
|
Початкова координата y лінії, задана як ціле число від 0 до 240. |
|
Кінцева x-координата лінії, задана як ціле число від 0 до 240. |
|
Кінцева координата Y лінії, задана як ціле число від 0 до 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 малює прямокутник з верхнім лівим кутом у вибраній координаті (x, y) та розміром, що визначається заданою шириною та висотою, усі виміряні в пікселях. Контур прямокутника малюється з використанням поточних параметрів ширина пера та колір пера. Внутрішня частина заповнюється поточним кольором заливка, якщо не використовується необов’язковий параметр color.
Координати x та y використовують початковий пункт за замовчуванням (0, 0), якщо не було встановлено інший початковий пункт за допомогою set_origin.
Usage:robot.screen.draw_rectangle(x, y, width, height, color)
Параметр |
Опис |
|---|---|
|
Координата x верхнього лівого кута прямокутника, задана як ціле число від 0 до 240. |
|
Y-координата верхнього лівого кута прямокутника, задана як ціле число від 0 до 240. |
|
Ширина прямокутника, задана як ціле число від 0 до 240. |
|
Висота прямокутника, задана як ціле число від 0 до 240. |
|
Необов’язково. Колір заливки прямокутника. Варіанти:
|
# 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 selected (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 and pen color. The interior is filled with the current fill color, unless the optional color parameter is used.
Координати x та y використовують початковий пункт за замовчуванням (0, 0), якщо не було встановлено інший початковий пункт за допомогою set_origin.
Usage:robot.screen.draw_circle(x, y, radius, color)
Параметр |
Опис |
|---|---|
|
Координата x центру кола, задана як ціле число від 0 до 240. |
|
Y-координата центру кола, задана як ціле число від 0 до 240. |
|
Радіус кола, заданий як ціле число від 0 до 240 пікселів. |
|
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 відображає на екрані робота завантажене користувачем зображення, положення якого встановлюється за допомогою параметрів x, yта center на основі опорної точки зображення.
Usage:
robot.screen.show_file(file, x, y, center)
Параметр |
Опис |
|---|---|
|
Власне зображення для використання, від |
|
Горизонтальне зміщення зображення, задане як ціле число в пікселях. Додатні значення зміщують його праворуч; від’ємні значення зміщують його ліворуч. |
|
Вертикальне зміщення зображення, задане як ціле число в пікселях. Додатні значення зміщують його вниз; від’ємні значення – вгору. |
|
Необов’язково. Якщо |
# 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 визначає прямокутну область на екрані, де будуть обмежені всі малюнки та текст. Будь-який контент за межами цієї області не відображатиметься.
Usage:
robot.screen.set_clip_region(x, y, width, height)
Параметр |
Опис |
|---|---|
|
Координата x верхнього лівого кута області кліпу, задана як десяткове число ( |
|
Y-координата верхнього лівого кута області кліпу, задана як десяткове число ( |
|
Ширина області кліпу в пікселях, задана як десяткове число ( |
|
Висота області кліпу в пікселях, задана як десяткове число ( |
# 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)

Зворотні виклики#
pressed#
pressed реєструє метод, який буде викликано при натисканні екрана робота.
Usage:robot.screen.pressed(callback, arg)
Параметри |
Опис |
|---|---|
|
Функція function, яку попередньо визначено для виконання при натисканні екрана контролера. |
|
Необов’язково. Кортеж tuple, що містить аргументи для передачі функції зворотного виклику. Див. Використання функцій з параметрами для отримання додаткової інформації. |
# 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 реєструє метод, який буде викликано, коли екран робота відпускається.
Usage:robot.screen.released(callback, arg)
Параметри |
Опис |
|---|---|
|
Функція function, яку попередньо визначено для виконання при натисканні екрана контролера. |
|
Необов’язково. Кортеж tuple, що містить аргументи для передачі функції зворотного виклику. Див. Використання функцій з параметрами для отримання додаткової інформації. |
# Set the LEDs to blue when the screen is released.
def screen_released():
robot.led.on(ALL_LEDS, BLUE)
robot.screen.released(screen_released)










