屏幕#
介绍#
VEX AIM 编程机器人的屏幕提供了用于显示文本、管理光标、绘制形状和处理触摸交互的模块。以下是所有可用模块的列表,按功能分组:
光标打印 - 使用行列光标系统管理文本显示。
print – 在屏幕上当前光标位置显示文本。
将光标设置到行列 – 将光标移动到特定的行和列。
将光标设置到下一行 – 将光标移动到下一行的第 1 列。
清除行 – 清除指定行的文本。
屏幕光标列 – 返回将打印文本的列号。
屏幕光标行 – 返回将打印文本的行号。
XY 打印 - 在基于像素的坐标处打印文本。
设置 - 自定义文本格式和屏幕显示。
清除屏幕 – 从屏幕上删除所有文本和图形。
填充屏幕 – 从屏幕上删除所有文本和图形,然后设置屏幕的背景颜色。
设置字体 – 更改文本显示的字体类型和大小。
设置打印精度 - 调整打印数字的小数位数。
设置笔宽 - 调整画线的厚度。
设置笔/字体颜色 – 更改文本和绘图的颜色。
设置填充颜色 – 定义形状的填充颜色。
绘制——创建图形和视觉元素。
触摸——检测屏幕交互。
光标打印#
打印#
print 块在机器人屏幕上的当前 光标位置 和 字体 显示文本。
打印 [VEX代码] 在屏幕 ▶
参数 |
描述 |
---|---|
价值 |
要在屏幕上显示的文本、数字或变量值。 |
扩大箭头 |
展开块来读取并将光标设置到下一行,并使光标移动到该块之后的下一行。 |
例子
当开始 :: hat events
[在起始光标位置显示一条消息.]
打印 [你好,机器人!] 在屏幕 ▶
将光标设置到行列#
使用“将光标置于行列”块时,光标会置于屏幕上特定的行和列。实际可容纳的行数和列数取决于所选字体。使用默认的等宽中等字体,最多可清晰显示 8 行 13 列。超出此范围的文本可能会被截断或难以阅读。
等宽字体的字符宽度相同,使文本位置保持一致。相比之下,比例字体的字符宽度各不相同,因此某些字母比其他字母占用更多空间。但是,无论使用哪种类型,将光标设置为行列块都会根据行和列的大小(而不是字体样式)来定位光标。可以使用 设置字体块 调整字体大小。
在屏幕上设定光标至 [1] 行 [1] 列
参数 |
描述 |
---|---|
排 |
游标所在行。 |
柱子 |
光标所在的列。 |
示例
当开始 :: hat events
[从第 3 行第 2 列开始显示文本.]
在屏幕上设定光标至 (3) 行 (2) 列
打印 [第 3 行,第 2 列] 在屏幕 ▶
当开始 :: hat events
[以有序列表的形式显示货物数量.]
设定屏幕字体为 [比例 v] [大 v]
打印 [运动球] 在屏幕 ◀ 并设定光标至下一行
打印 [橙色桶] 在屏幕 ◀ 并设定光标至下一行
打印 [蓝桶] 在屏幕 ▶
在屏幕上设定光标至 [1] 行 [11] 列
打印 [2] 在屏幕 ▶
在屏幕上设定光标至 [2] 行 [1] 列
打印 [3] 在屏幕 ▶
在屏幕上设定光标至 [3] 行 [11] 列
打印 [3] 在屏幕 ▶
当开始 :: hat events
[显示检测到的 AprilTag 的 ID.]
设定屏幕字体为 [比例 v] [特大 v]
永久循环
清屏
打印 [四月标签] 在屏幕 ▶
获得 AI 视觉仪 [四月标签 v] 数据
如果 <AI 视觉仪对象存在?> 那么
在屏幕上设定光标至 [3] 行 [4] 列
打印 (AI 视觉仪对象 [标签ID v]) 在屏幕 ▶
结束
等待 [0.1] 秒
将光标设置到下一行#
将光标设置到下一行块将光标移动到机器人屏幕下一行的第 1 列。
在屏幕上设定光标至下一行
参数 |
描述 |
---|---|
该块没有参数。 |
例子
当开始 :: hat events
[显示两行文本.]
打印 [1 号线] 在屏幕 ▶
在屏幕上设定光标至下一行
打印 [2 号线] 在屏幕 ▶
清除行#
清除行块清除机器人屏幕上的一行文本。
清除屏幕第 [1] 行
参数 |
描述 |
---|---|
排 |
要清除的行号。 |
例子
当开始 :: hat events
[在两行上显示文本.]
打印 [此文本保留] 在屏幕 ▶
在屏幕上设定光标至下一行
打印 [此文本消失] 在屏幕 ▶
等待 [3] 秒
清除屏幕第 [2] 行
屏幕光标列#
屏幕光标列块返回将以整数形式打印文本的列号。
(屏幕光标列)
参数 |
描述 |
---|---|
该块没有参数。 |
例子
当开始 :: hat events
[显示光标的当前列.]
在屏幕上设定光标至 [3] 行 [2] 列
打印 (屏幕光标列) 在屏幕 ▶
屏幕光标行#
屏幕光标行块返回将以整数形式打印文本的行号。
(屏幕光标行)
参数 |
描述 |
---|---|
该块没有参数。 |
例子
当开始 :: hat events
[显示光标的当前行.]
在屏幕上设定光标至 [3] 行 [2] 列
打印 (屏幕光标行) 在屏幕 ▶
XY打印#
打印于#
print at 块在机器人屏幕上指定的 x 和 y 坐标(以像素为单位)处使用当前设置的 font 显示文本。
打印 [VEX代码] 至屏幕 [80] [120]
参数 |
描述 |
---|---|
价值 |
要在屏幕上显示的文本、数字或变量值。 |
十 |
x 坐标(以像素为单位)(0 到 240,其中 0 为左,240 为右)。 |
是 |
y 坐标(以像素为单位)(0 到 240,其中 0 为顶部,240 为底部)。 |
例子
当开始 :: hat events
[在屏幕中间显示一条消息.]
打印 [你好,机器人!] 至屏幕 [40] [120]
设置屏幕原点#
设置屏幕原点 设置在机器人屏幕上绘图或打印时使用的原点 (0,0)。默认情况下,绘图或打印块将屏幕左上角视为原点。此块可以将原点重置为另一个 (x, y) 屏幕坐标位置。
设置屏幕原点x: [0] y: [0]
参数 |
描述 |
---|---|
十 |
设置新原点的 x 坐标(以像素为单位)。 |
是 |
设置新原点的 y 坐标(以像素为单位)。 |
例子
当开始 :: hat events
[将原点设置为屏幕中心.]
设置屏幕原点x: [120] y: [120]
[在新原点处绘制一个矩形.]
屏幕 [0] [0] [80] [40] 画矩形
设置#
清除屏幕#
清除屏幕块清除机器人屏幕上的所有图形和文本,并将光标位置重置为第 1 行、第 1 列。
清屏
参数 |
描述 |
---|---|
该块没有参数。 |
例子
当开始 :: hat events
[画一个圆圈,2秒后清除.]
屏幕 [120] [120] [40] 画圆形
等待 [2] 秒
清屏
填满屏幕#
填充屏幕块清除机器人屏幕上的所有图形和文本,然后将背景更改为指定的颜色。
屏幕填充色为 [红色 v]
参数 |
描述 |
---|---|
颜色 |
将背景颜色更改为:
|
例子
当开始 :: hat events
[说 "你好" 然后屏幕变黄.]
打印 [你好] 在屏幕 ▶
等待 [2] 秒
屏幕填充色为 [黄色 v]
设置字体#
设置字体 模块用于设置机器人屏幕上显示文本的字体和大小。此字体将应用于所有后续打印的文本。
设定屏幕字体为 [等间距 v] [超小 v]
参数 |
描述 |
---|---|
类型 |
字体类型:
|
尺寸 |
字体大小(如下所示):
|
|
|
|
---|---|---|
|
|
|
|
|
|
|
|
例子
当开始 :: hat events
[使用较大的字体显示文本]
设定屏幕字体为 [等间距 v] [特大 v]
打印 [烦恼] 在屏幕 ▶
设置打印精度#
设置打印精度 模块用于设置机器人屏幕上显示数字的精度格式。此打印精度将应用于所有后续打印的数字。
在屏幕上设定打印精度为 [0.1 v]
参数 |
描述 |
---|---|
精确 |
将打印精度设置为:
|
例子
当开始 :: hat events
[将 1/3 打印为 0.33]
在屏幕上设定打印精度为 [0.01 v]
打印 ([1] [math_division v] [3]) 在屏幕 ▶
设置笔宽#
设置笔宽块设置用于绘制线条和形状的笔宽。
设定屏幕笔宽为 [10]
参数 |
描述 |
---|---|
宽度 |
笔的宽度(以像素为单位),范围从 0 到 32。 |
例子
当开始 :: hat events
[画一个笔宽为10的矩形.]
设定屏幕笔宽为 [10]
屏幕 [50] [130] [100] [60] 画矩形
设置画笔/字体颜色#
设置笔/字体颜色块设置用于在机器人屏幕上绘制线条、形状和文本的笔颜色。
设定屏幕笔/字体颜色为 [红色 v]
参数 |
描述 |
---|---|
颜色 |
将笔颜色设置为:
|
例子
当开始 :: hat events
[用红笔画一个矩形.]
设定屏幕笔/字体颜色为 [红色 v]
屏幕 [50] [130] [100] [60] 画矩形
设置填充颜色#
设置填充颜色块设置绘制形状时使用的填充颜色。
设定屏幕填充色为 [红色 v]
参数 |
描述 |
---|---|
颜色 |
将填充颜色设置为:
|
示例
当开始 :: hat events
[画两个橙色矩形.]
设定屏幕填充色为 [橙色 v]
屏幕 [50] [50] [100] [60] 画矩形
屏幕 [50] [130] [100] [60] 画矩形
当开始 :: hat events
[显示具有紫色背景的文本.]
设定屏幕填充色为 [紫色 v]
打印 [强调] 在屏幕 ▶
画#
显示图像文件#
显示图像文件块在机器人的屏幕上绘制自定义的用户上传图像。
显示图像文件 [1 v]
参数 |
描述 |
---|---|
图像槽号 |
要使用的自定义图像,编号 1 到 10。图像编号与 AIM 控制面板中显示的数字一致。 |
例子
当开始 :: hat events
[绘制已上传的图片 1.]
显示图像文件 [1 v]
绘制像素#
绘制像素 块在当前 画笔颜色 中在指定的 (x, y) 屏幕坐标处绘制一个像素。
屏幕 [0] [0] 画点
参数 |
描述 |
---|---|
十 |
绘制像素的 x 坐标。 |
是 |
绘制像素的 y 坐标。 |
例子
当开始 :: hat events
[在屏幕中心绘制一个像素.]
屏幕 [120] [120] 画点
画线#
画线 块使用当前 笔宽 和 笔颜色 从第一个指定的屏幕坐标 (x1, y1) 到第二个指定的屏幕坐标 (x2, y2) 绘制一条线。
屏幕 [0] [0] [10] [10] 画线段
参数 |
描述 |
---|---|
x1 |
线起点的 x 坐标(以像素为单位)。 |
y1 |
线起点的 y 坐标(以像素为单位)。 |
x2 |
线末端的 x 坐标(以像素为单位)。 |
y2 |
线末端的 y 坐标(以像素为单位)。 |
例子
当开始 :: hat events
[从屏幕左上角到右下角画一条线.]
屏幕 [0] [0] [240] [240] 画线段
绘制矩形#
绘制矩形块使用当前的 画笔宽度、画笔颜色 和 填充颜色 绘制一个矩形。
屏幕 [0] [0] [10] [10] 画矩形
参数 |
描述 |
---|---|
十 |
矩形左上角的 x 坐标(以像素为单位)。 |
是 |
矩形左上角的 y 坐标(以像素为单位)。 |
宽度 |
矩形的宽度(以像素为单位)。 |
高度 |
矩形的高度(以像素为单位)。 |
例子
当开始 :: hat events
[在屏幕上绘制一个矩形.]
屏幕 [50] [130] [100] [60] 画矩形
画圆#
画圆 块使用当前的 笔宽、笔颜色 和 填充颜色 绘制一个圆圈。
屏幕 [0] [0] [10] 画圆形
参数 |
描述 |
---|---|
十 |
圆心的 x 坐标(以像素为单位)。 |
是 |
圆心的 y 坐标(以像素为单位)。 |
半径 |
圆的半径(以像素为单位)。 |
例子
当开始 :: hat events
[在屏幕上绘制一个矩形.]
屏幕 [120] [120] [40] 画圆形
触碰#
屏幕被按下?#
屏幕是否被按下? 模块返回机器人的屏幕当前是否被按下。该模块返回一个布尔值:
True - 屏幕当前被按下
False - 屏幕未被按下
<屏幕按下了?>
参数 |
描述 |
---|---|
该块没有参数。 |
例子
当开始 :: hat events
[仅当按下屏幕时,LED 才会变为白色.]
永久循环
如果 <屏幕按下了?> 那么
将 [lightall v] LED颜色设置为 [白色 v]
否则
将 [lightall v] LED颜色设置为 [灭 v]
结束
结束
屏幕位置#
屏幕位置 块返回一个整数,表示按下屏幕时的 x 和 y 坐标(以像素为单位)。x 的返回值介于 0(左)和 240(右)之间。y 的返回值介于 0(上)和 240(下)之间。
(屏幕 [x v] 位置)
参数 |
描述 |
---|---|
协调 |
最后一次屏幕按下的坐标(以像素为单位):
|
例子
当开始 :: hat events
[显示按下屏幕的 x 和 y 坐标。]
永久循环
如果 <屏幕按下了?> 那么
清屏
打印 (屏幕 [x v] 位置) 在屏幕 ▶
在屏幕上设定光标至下一行
打印 (屏幕 [y v] 位置) 在屏幕 ▶
结束
结束
当屏幕事件#
当机器人的屏幕被按下或不再被按下时,将调用当屏幕事件块。
当屏幕 [按下 v] :: hat events
参数 |
描述 |
---|---|
行动 |
确定附加的块堆栈何时执行:
|
例子
当屏幕 [按下 v] :: hat events
[按下屏幕时将 LED 设置为绿色.]
将 [lightall v] LED颜色设置为 [绿色 v]