表示颜色的pygame对象。
Color(r, g, b) -> Color
Color(r, g, b, a=255) -> Color
Color(color_value) -> Color
pygame.Color.r | 获取或者设置Color对象中的红色数值。 |
pygame.Color.g | 获取或者设置Color对象中的绿色数值。 |
pygame.Color.b | 获取或者设置Color对象中的蓝色数值。 |
pygame.Color.a | 获取或者设置Color对象中的透明度数值。 |
pygame.Color.cmy | 获取或者设置Color对象的CMY表示(C-湖绿色,M-洋红色, Y-黄色) |
pygame.Color.hsva | 获取或者设置Color对象的HSVA表示(H-色调,S-饱和度,V-明度,A-透明度) |
pygame.Color.hsla | 获取或者设置Color对象的HSLA表示(H-色调,S-饱和度,L-亮度,A-透明度)Gets or sets the HSLA representation of the Color. |
pygame.Color.i1i2i3 | 获取或者设置Color对象的i1i2i3表示 |
pygame.Color.normalize | 返回Color对象的标准化RGBA值 |
pygame.Color.correct_gamma | 对Color对象应用一个gamma值 |
pygame.Color.set_length | 给Color对象设置元素数量,可选的值是1,2,3,4 |
pygame.Color.lerp | 返回给定的Color对象的一个线性插值 |
pygame.Color.premul_alpha | 返回一个r,g,b值都乘上了alpha(透明度值)的Color对象 |
pygame.Color.update | 设置Color对象的元素值 |
Color类表示RGBA颜色值,各个元素的取值范围是0到255(0和255都包含在内)。它允许使用基本的算术运算--+.-,*,//,%这些二元运算,还有~这个单目运算--来创建新颜色,支持转化为HSV或者HSL等其他色彩空间,也支持单一色彩通道的调节。Alpha值没给的话,默认是255(完全不透明)。算术运算和correct_gamma()方法保留子类。对二元运算符来说,返回的颜色的类跟运算符左边的颜色对象的类是一致的。
Color对象支持跟其他Color对象以及3到4个整数元素的元组之间的相等比较。pygame1.8.1版本有一个bug, alpha的默认值是0,不是以前的255.
Color对象导出C语言级别的数组接口。这个接口导出一个只读的一维无符号字节数组,这个数组和Color对象的长度是一样的。对CPython2.6和之后的版本来讲,新的缓冲接口也被导出了,跟数组接口的特点是一样的。
整除运算符, //
, 和取余运算符, %
, 不会报除数为0的错误。取而代之的是, 如果运算符右侧的一个颜色对象, 或者alpha值、色彩通道的值是0, 运算结果就是0. 比方说:
# 下面的表达式都是True
Color(255, 255, 255, 255) // Color(0, 64, 64, 64) == Color(0, 3, 3, 3)
Color(255, 255, 255, 255) % Color(64, 64, 64, 0) == Color(63, 63, 63, 0)
未完待续……