自定义颜色#

简介#

VEX AIM 编程机器人支持使用自定义颜色进行绘图、显示和 LED 控制。自定义颜色可以使用 RGB 值、十六进制代码或预定义常量创建。自定义颜色功能包含用于创建和更新颜色对象的方法。

以下是所有功能的列表:

构造函数–创建一个新的Color对象。

  • Color(value) –接受预定义的常量、十六进制字符串或十六进制整数。

  • Color(r, g, b) –使用红色、绿色和蓝色值创建颜色。

** 修改方法 –更新现有的Color 对象。**

  • rgb –使用新的RGB值更新颜色。

  • hsv –使用色调、饱和度和亮度更新颜色。

  • web –使用web十六进制颜色字符串更新颜色。

创建自定义颜色#

要使用自定义颜色,必须首先使用以下构造函数之一创建 Color 对象:

Hexadecimal Integer#

使用六位十六进制整数创建颜色。

**用法: **
Color(value)

参数

描述

value

十六进制格式的六位整数(例如黄色0xFFF700)。

# Construct a yellow Color "yellow" using a
# hexadecimal value
yellow = Color(0xFFF700)

robot.screen.set_pen_color(yellow)
robot.screen.print("My Yellow")

RGB#

使用单独的红色、绿色和蓝色值创建颜色。

Usage:
Color(r, g, b)

参数

描述

r

一个表示红色成分的 0 至 255 之间的整数。

g

一个表示绿色成分的 0 至 255 之间的整数。

b

一个表示蓝色成分的 0 至 255 之间的整数。

# Construct a yellow Color "yellow" using
# RGB values
yellow = Color(255, 247, 0)

robot.screen.set_pen_color(yellow)
robot.screen.print("My Yellow")

Web Color#

使用 Web 颜色字符串(十六进制代码)创建颜色。

**用法: **
Color(value)

参数

描述

value

网页颜色作为字符串(十六进制代码)(例如,“#FFF700”)。

# Construct a yellow Color "yellow" using a
# web string
yellow = Color("#FFF700")

robot.screen.set_pen_color(yellow)
robot.screen.print("My Yellow")

Predefined Color#

使用预定义的 Color 常量创建颜色。

**用法: **
Color(value)

参数

描述

value

内置颜色常数:

  • BLACK
  • BLUE
  • CYAN
  • GREEN
  • ORANGE
  • PURPLE
  • RED
  • TRANSPARENT
  • WHITE
  • YELLOW
# Construct a yellow Color "yellow" using a
# predefined Color constant
yellow = Color(YELLOW)

robot.screen.set_pen_color(yellow)
robot.screen.print("My Yellow")

修改器#

这些方法用于更新现有 Color 对象的颜色。要使用它们,请在创建 Color 时将其赋值给一个变量,然后对该变量调用方法以更改其颜色。

rgb#

rgb 使用 RGB 值更新现有 Color 对象的颜色。

用法:
variable_name.rgb(r, g, b)

参数

描述

r

一个表示红色成分的 0 至 255 之间的整数。

g

一个表示绿色成分的 0 至 255 之间的整数。

b

一个表示蓝色成分的 0 至 255 之间的整数。

# Create a custom teal color and set it as the pen color
robot_color = Color(50, 200, 180)
robot.screen.set_pen_color(robot_color)

# Draw a rectangle with the teal outline
robot.screen.draw_rectangle(30, 70, 80, 50)

# Draw another rectangle with a magenta outline
robot_color.rgb(170, 40, 150)
robot.screen.set_pen_color(robot_color)
robot.screen.draw_rectangle(130, 70, 80, 50)

hsv#

hsv 使用 HSV 值更新现有 Color 对象的颜色。

注意: hsv 只能用于更改已经创建的 Color 对象。它不能用于创建新的 Color 对象。

用法:
variable_name.hsv(h, s, v)

参数

描述

h

一个介于 0 到 359 之间的整数,表示颜色的色调。

s

0.0 到 1.0 之间的浮点数,表示颜色的饱和度。

v

0.0 到 1.0 之间的浮点数,表示颜色的亮度。

# Create a custom teal color using RGB (HSV can't be used)
robot_color = Color(50, 200, 180)
robot.screen.set_pen_color(robot_color)

# Draw a rectangle with the teal outline
robot.screen.draw_rectangle(30, 70, 80, 50)

# Draw another rectangle with a magenta outline
robot_color.hsv(300, 0.75, 0.78)
robot.screen.set_pen_color(robot_color)
robot.screen.draw_rectangle(130, 70, 80, 50)

web#

web 使用 Web 颜色(十六进制代码)更新现有 Color 对象的颜色。

用法:
variable_name.web(value)

参数

描述

value

网页颜色作为字符串(十六进制代码)(例如,“#FFF700”)。

# Create a custom teal color and set it as the pen color
robot_color = Color("#32C8B6")
robot.screen.set_pen_color(robot_color)

# Draw a rectangle with the teal outline
robot.screen.draw_rectangle(30, 70, 80, 50)

# Draw another rectangle with the new magenta outline
robot_color.web("#AA2896")
robot.screen.set_pen_color(robot_color)
robot.screen.draw_rectangle(130, 70, 80, 50)