自定义颜色#

介绍#

VEX IQ(第二代)支持使用自定义颜色进行绘图和文本绘制。自定义颜色可以使用 RGB 值、十六进制代码、HSV 值或预定义常量创建。自定义颜色包含创建和更新颜色对象的方法。以下是可用方法的列表:

构造函数——创建一个新的“Color”对象。

  • Color(value) – 接受预定义常量、十六进制字符串(例如“#FFF700”)或十六进制整数(例如“0xFFF700”)。

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

Mutators – 更新现有的“Color”对象。

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

  • hsv – 使用色调 (0–360)、饱和度和亮度 (0.0–1.0) 更新颜色。

  • web – 使用 Web 十六进制颜色字符串更新颜色(例如“#32C8B6”)。

创建自定义颜色#

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

十六进制整数#

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

用法:
颜色(值)

范围

描述

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

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

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

RGB#

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

用法:
颜色(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)

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

网页颜色#

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

用法:
颜色(值)

范围

描述

以字符串(十六进制代码)表示的 Web 颜色(例如,“#FFF700”)。

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

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

预定义颜色#

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

用法:
颜色(值)

范围

描述

内置颜色常量:
BLACKBLUECYANGREENORANGEPURPLEREDTRANSPARENTWHITEYELLOW

# Construct a yellow Color "yellow" using a
# predefined Color constant
yellow = Color.YELLOW

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

修改器#

这些方法允许您在项目期间创建“Color”对象后对其进行修改。

RGB#

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

用法:
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
brain_color = Color(50, 200, 180)
brain.screen.set_pen_color(brain_color)

# Draw a rectangle with the teal outline
brain.screen.draw_rectangle(5, 10, 80, 40)

# Draw another rectangle with a magenta outline
brain_color.rgb(170, 40, 150)
brain.screen.set_pen_color(brain_color)
brain.screen.draw_rectangle(5, 60, 80, 40)

单纯疱疹病毒#

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

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

用法:
hsv(h, s, v)

参数

描述

h

表示颜色色调的 0 至 360 之间的整数。

s

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

v

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

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

# Draw a rectangle with the teal outline
brain.screen.draw_rectangle(5, 10, 80, 40)

# Draw another rectangle with a magenta outline
brain_color.hsv(300, 0.75, 0.78)
brain.screen.set_pen_color(brain_color)
brain.screen.draw_rectangle(5, 60, 80, 40)

网络#

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

用法:
web(value)

参数

描述

用于更新现有颜色实例的字符串形式的 Web 颜色(十六进制代码)。

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

# Draw a rectangle with the teal outline
brain.screen.draw_rectangle(5, 10, 80, 40)

# Draw another rectangle with the new magenta outline
brain_color.web("#AA2896")
brain.screen.set_pen_color(brain_color)
brain.screen.draw_rectangle(5, 60, 80, 40)