Pygame 官方文档 - pygame.Color

Pygame的Color类用于描述颜色,支持RGBA、CMY、HSVA、HSLA等多种颜色空间转换,提供颜色算术运算和伽马校正功能。Color对象可以通过颜色名、RGB值或16进制字符串初始化,其属性如r、g、b和a可获取或设置颜色通道值。
摘要由CSDN通过智能技术生成

pygame.Color

Pygame中用于描述颜色的对象
Color(name) -> Color
Color(r, g, b, a) -> Color
Color(rgbvalue) -> Color

pygame.Color.r — 获取或设置Color对象的红色值。
pygame.Color.g — 获取或设置Color对象的绿色值。
pygame.Color.b — 获取或设置Color对象的蓝色值。
pygame.Color.a — 获取或设置Color对象的alpha通道值。
pygame.Color.cmy — 获取或设置Color对象的CMY(青、洋红和黄)值。
pygame.Color.hsva — 获取或设置Color对象的HSVA值。
pygame.Color.hsla — 获取或设置Color对象的HSLA值。
pygame.Color.i1i2i3 — 获取或设置Color对象的I1I2I3值。
pygame.Color.normalize — 返回Color的标准化RGBA值。
pygame.Color.correct_gamma — 应用一定的伽马值调整Color对象。
pygame.Color.set_length — 将Color对象中的元素数量设置为1,2,3或4(设置Color对象的长度(成员数量))

       Pygame的Color类使用0-255的值范围表示RGBA颜色值。它允许基本的算术运算操作来(二元运算+、-、*、//、%和一元运算~)创建新的颜色,支持转换到其它的颜色空间,如HSV或HSL,并且允许你调整单个颜色通道。当没有给出 alpha 的值是,默认是 255。算术运算和correct_gamma()方法保留了子类。对于二元运算符,对于二元运算符,返回颜色的类是运算符的左手颜色对象的类。
       “RGB值”可以要么是一个颜色的名字,一个HTML颜色格式化字符串,一个16进制数字字符串,或者是一个整数像素值。HTML格式是”#rrggbbaa”,rr、gg、bb和aa是2位16进制数。Alpha通道的aa是可选的。十六进制数字字符串的格式为”0xrrggbbaa”,其中aa是可选的。
       Color对象支持与其他颜色对象和3或4个整数元组的等式比较(1.9.0中的新增功能)。pygame 1.8.1中有一个bug,其中默认的alpha为0,而不是之前的255。
       Color 对象采用 C 级别的接口输出。输出为只读的一维无符号字节数组,分配与 Color 对象相同的长度。对于CPython 2.6及更高版本,新的缓冲区接口(与数组接口具有相同的特性)也会被输出。pygame 1.9.2中的新功能。
地板除(floor division)// 和取模 % 运算符不会因除零而引发异常。相反,如果右手边颜色的颜色或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)

在Pygame 1.8.1中完成对Color的新实现。
 

r

pygame.Color.r
获取或设置Color对象的红色值。
r -> int
Color对象的红色值
搜索pygame.Color.r的示例

g

pygame.Color.g
获取或设置Color对象的绿色值。
g -> int
Color对象的绿色值
搜索pygame.Color.g的示例

b

pygame.Color.b
获取或设置Color对象的蓝色值。
b -> int
Color对象的蓝色值
搜索pygame.Color.b的示例

a

pygame.Color.a
获取或设置Color对象的alpha通道值。
a -> int
Color对象的alpha通道值
搜索pygame.Color.a的示例

cmy

pygame.Color.cmy
获取或设置Color对象的CMY(青、洋红和黄)值。
cmy -> tuple
Color对象的CMY(青、洋红和黄)值。
CMY分量的范围为C = [0, 1], M = [0, 1], Y = [0, 1]。请注意,在所有情况下,这都不会返回设置的RGB值的绝对精确CMY值。由于0-255的RGB映射和0-1的CMY映射的精确时的错误可能导致CMY值与您的预期略有不同。
小甲鱼温馨提示:CMY 是青(Cyan)、洋红或品红(Magenta)和黄(Yellow)三种颜色的简写,是相减混色模式,用这种方法产生的颜色之所以称为相减色,乃是因为它减少了为视觉系统识别颜色所需要的反射光。由于彩色墨水和颜料的化学特性,用三种基本色得到的黑色不是纯黑色,因此在印刷术中,常常加一种真正的黑色(black ink),这种模型称为 CMYK 模型,广泛应用于印刷术。每种颜色分量的取值范围为0~100;CMY常用于纸张彩色打印方面。
搜索pygame.Color.cmy的示例

hsva

pygame.Color.hsva
获取或设置Color对象的HSVA值。
Hsva -> tuple
Color对象的HSVA值。
HSVA分量的范围为H=[0,360], S=[0,100], V=[0,100], A=[0,100]。请注意,在所有情况下,这都不会返回所设置的RGB值的绝对精确的HSV值。由于0-255的RGB映射和0-100和0-360的HSV映射的精确时的错误可能导致HSV值与您可能预期的略有不同。
小甲鱼温馨提示:HSV 色彩模型中颜色的参数分别是:色调(H),饱和度(S),亮度(V)。RGB 和 CMY 颜色模型都是面向硬件的,而 HSV(Hue Saturation Value)颜色模型是面向用户的。HSV 模型的三维表示从 RGB 立方体演化而来。设想从 RGB 沿立方体对角线的白色顶点向黑色顶点观察,就可以看到立方体的六边形外形。六边形边界表示色彩,水平轴表示纯度,明度沿垂直轴测量。

搜索pygame.Color.hsva的示例

hsla

pygame.Color.hsla
获取或设置Color对象的HSLA值。
hsla -> tuple
对象的HSLA值。HSLA分量的范围为H=[0,360],S=[0,100],V=[0,100],A=[0,100]。请注意,在所有情况下,这都不会返回所设置的RGB值的绝对精确的HSL值。由于0-255的RGB映射和0-100和0-360的HSL映射的精确时的错误可能导致HSL值与您可能预期的略有不同。
小甲鱼温馨提示:HSL 色彩模型是工业界的一种颜色标准,是通过对色相(H)、饱和度(S)、明度(L)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,HSL 即是代表色相,饱和度,明度三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。
搜索pygame.Color.hsla的示例

i1i2i3

pygame.Color.i1i2i3
获取或设置Color对象的I1I2I3值。
i1i2i3 -> tuple
Color对象的I1I2I3值。I1I2I3分量的范围为I1=[0,1],I2=[-0.5,0.5],I3=[-0.5,0.5]。请注意,在所有情况下,这都不会返回设置RGB值的绝对精确的I1I2I3值。由于0-255的RGB映射和0-1舍入的I1I2I3映射的精确时的错误可能导致I1I2I3值与您可能预期的略有不同。
小甲鱼温馨提示:I1I2I3 是与 RGB 类似的颜色空间,转化公式为:I1 = (R + G + B) / 3,I2 = (G - B) / 2,I3 = (2G - R - B) / 4。
搜索pygame.Color.i1i2i3的示例

normalize()

pygame.Color.normalize
返回Color对象的标准化RGBA值。
normalize() -> tuple
将Color对象的标准化RGBA值作为浮点值返回。
小甲鱼温馨提示:但这里每个分量的值不是整数范围 0 ~ 255,而是转化为浮点数范围 0 ~ 1。
搜索pygame.Color.normalize的示例

correct_gamma()

pygame.Color.correct_gamma
对Color对象应用一定的伽马值。
correct_gamma (gamma) -> Color
将一定的伽玛值调整Color对象,并返回具有调整后的RGBA值的新颜色。
搜索pygame.Color.correct_gamma的示例

set_length()

pygame.Color.set_length
将Color对象中的元素数量设置为1,2,3或4(设置 Color 对象的长度(成员数量))
set_length(len) -> None
默认颜色长度为4。颜色可以具有1,2,3或4的长度。这对于解包为 r,g,b 而不是 r,g,b,a 很有用。如果你希望得到一个 Color 对象的长度,你可以使用 len(color) 获得。
原句:【If you want to get the length of a Color do len(acolor).】
pygame 1.9.0中的新功能。
小甲鱼温馨提示:color.set_length(2) 它只是修改了 __len__(),而不是真的把其中两个成员扔掉……
搜索pygame.Color.set_length的示例
 
以上文档,感谢鱼C论坛的分享:[Pygame] Color | Pygame中文文档

点我回顶部

 
 
 
 
 
 
 
Fin.

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值