- pygame.Color¶
- pygame object for color representationsColor(r, g, b) -> ColorColor(r, g, b, a=255) -> ColorColor(color_value) -> Color
— Gets or sets the red value of the Color. — Gets or sets the green value of the Color. — Gets or sets the blue value of the Color. — Gets or sets the alpha value of the Color. — Gets or sets the CMY representation of the Color. — Gets or sets the HSVA representation of the Color. — Gets or sets the HSLA representation of the Color. — Gets or sets the I1I2I3 representation of the Color. — Returns the normalized RGBA values of the Color. — Applies a certain gamma value to the Color. — Set the number of elements in the Color to 1,2,3, or 4. — returns the grayscale of a Color — returns a linear interpolation to the given Color. — returns a Color where the r,g,b components have been multiplied by the alpha. — Sets the elements of the color La clase
Color
representa valores de colorRGBA
utilizando un rango de valores de 0 a 255 inclusive. Permite realizar operaciones aritméticas básicas, como operaciones binarias+
,-
,*
,//
,%
, y unaria~
para crear nuevos colores. Admite conversiones a otros espacios de colores comoHSV
oHSL
, y te permite ajustar canales individuales de color. El valor alfa se establece en 255 (completamente opaco) de forma predeterminada si no se proporciona. Las operaciones aritméticas y métodocorrect_gamma()
conservan las subclases. Para los operadores binarios, la clase de color devuelto es la del objeto de color de la parte izquierda del operador.Los objetos de color admiten comparación de igualdad con otros objetos de color y tuplas de 3 o 4 elementos de enteros. Hubo un error en pygame 1.8.1 donde el valor alfa predeterminado era 0, no 255 como antes.
Los objetos de color exportan la interfaz de array a nivel C. La interfaz exporta un array de bytes no firmados unidimensional de solo lectura con la misma longitud asignada que el color. También se exporta la nueva interfaz del búfer, con la mismas características que la interfaz del array.
Los operadores de división entera,
//
, y módulo,%
, no generan una excepción por división por cero. En su lugar, si un canal de color, o alfa, en el color de la parte derecha es 0, entonces el resultado es 1. Por ejemplo:# Estas expresiones son True (verdaderas) 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)
Usa
int(color)
para obtener el valor entero inmutable del color, que se puede utilizar como clave en un diccionario. Este valor entero difiere de los valores de píxeles mapeados de los métodospygame.Surface.get_at_mapped()
,pygame.Surface.map_rgb()
ypygame.Surface.unmap_rgb()
. Se puede pasar como argumentocolor_value
aColor
(útil con conjuntos).Ver color_list para ejemplos de nombres de colores disponibles.
- Parámetros:
r (int) -- el valor rojo en el rango de 0 a 255 inclusive
g (int) -- el valor verde en el rango de 0 a 255 inclusive
b (int) -- el color azul en el rango de 0 a 255 inclusive
a (int) -- (opcional) valor alfa en el rango de 0 a 255 inclusive, predeterminado es 255
color_value (Color or str or int or tuple(int, int, int, [int]) or list(int, int, int, [int])) --
valor del color (ver nota abajo para los formatos admitidos)
Nota
- Formatos de
color_value
admitidos: - - Objeto Color: clona el objeto de clase
Color
- Nombre de color: str: nombre del color a utilizar, por ejemplo'red'
(todos los nombres admitidos se pueden encontrar en color_list, con muestras de ejemplo)- Formato de color HTML str:'#rrggbbaa'
o'#rrggbb'
, donde rr, gg, bb, y aa son números hexadecimales de 2 digitos en el rango de 0 a 0xFF inclusive, el valor aa (alfa) se establece en 0xFF de forma predeterminada si no se proporciona- Número hexadecimal str:'0xrrggbbaa'
o'0xrrggbb'
, donde rr, gg, bb, y aa son números hexadecimales de 2 digitos en el rango de 0x00 a 0xFF inclsuvie, el valor aa (alfa) se establece en 0xFF de forma predeterminada si no se proporciona.- int: valor entero del color a utilizar, usar números hexadecimales pueden hacer que este parámetro sea más legible, por ejemplo,0xrrggbbaa
, donde rr, gg, bb, y aa son números hexadecimales de dos dígitos en el rango de 0x00 a 0xFF inclusive, notese que el valor aa (alfa) no es opcional para el formato int y debe ser proporcionado.- tupla/lista de valores enteros de color:(R, G, B, A)
o(R, G, B)
, donde R, G, B, y A son valores enteros en el rango de 0 a 255 inclusive, el valor A (alfa) se establece en 255 de forma predeterminada si no se proporciona.
- Formatos de
- Devuelve:
a newly created
Color
object- Tipo del valor devuelto:
Changed in pygame 1.9.2: Color objects export the C level array interface.
Changed in pygame 1.9.0: Color objects support 4-element tuples of integers.
Changed in pygame 1.8.1: New implementation of the class.
- r¶
- Gets or sets the red value of the Color.r -> int
El valor rojo del color.
- g¶
- Gets or sets the green value of the Color.g -> int
El valor verde del color.
- b¶
- Gets or sets the blue value of the Color.b -> int
El valor azul del color.
- a¶
- Gets or sets the alpha value of the Color.a -> int
El valor alfa del color.
- cmy¶
- Gets or sets the CMY representation of the Color.cmy -> tuple
La representación
CMY
del color. Los componentesCMY
están en los rangosC
= [0, 1],M
= [0, 1],Y
= [0, 1]. Tené en cuenta que estos no devolverá los valoresCMY
exactos para los valoresRGB
establecidos en todos los casos. Debido a la asignación deRGB
de 0-255 y la asignación deCMY``de 0-1, los errores de redondeo pueden hacer que los valores ``CMY
difieran ligeramente de lo que podrías esperar.
- hsva¶
- Gets or sets the HSVA representation of the Color.hsva -> tuple
La representación
HSVA
del color. Los componentesHSVA
están en los rangosH
= [0, 360],S
= [0, 100],V
= [0, 100], A = [0, 100]. Tené en cuenta que esto devolverá los valoresHSV
exactos para los valoresRGB
establecidos en todos los casos. Debido a la asignación deRGB
de 0-255 y la asignación deHSV
de 0-100 y 0-360, los errores de redondeo pueden hacer que los valoresHSV
difieran ligeramente de lo que podrías esperar.
- hsla¶
- Gets or sets the HSLA representation of the Color.hsla -> tuple
La representación
HSLA
del color. Los componentesHSLA
están en rangosH
= [0, 360],S
= [0, 100],L
= [0, 100], A = [0, 100]. Tené en cuenta que esto no devolverá los valoresHSL
exactos para los valoresRGB
establecidos en todos los casos. Debido a la asignación deRGB
de 0-255 y la asignación deHSL
de 0-100 y 0-360, los errores de redondeo pueden hacer que los valoresHSL
difieran ligeramente de lo que podrías esperar.
- i1i2i3¶
- Gets or sets the I1I2I3 representation of the Color.i1i2i3 -> tuple
La representación
I1I2I3
del color. Los componentesI1I2I3
están en los rangosI1
= [0, 1],I2
= [-0.5, 0.5],I3
= [-0.5, 0.5]. Tené en cuenta que esto no devolverá los valoresI1I2I3
exactos para los valoresRGB
establecidos en todos los cosas. Debido a la asignación deRGB
de 0-255 y la asignaciónI1I2I3
de 0-1, los errores de redondeo pueden hacer que los valores ``I1I2I3``difieran ligeramente de lo que podrías esperar.
- normalize()¶
- Returns the normalized RGBA values of the Color.normalize() -> tuple
Devuelve los valores
RGBA
del color como valores de punto flotante.
- correct_gamma()¶
- Applies a certain gamma value to the Color.correct_gamma (gamma) -> Color
Aplica un cierto valor de gamma al color y devuelve un nuevo color con los valores
RGBA
ajustados.
- set_length()¶
- Set the number of elements in the Color to 1,2,3, or 4.set_length(len) -> None
DEPRECATED: Puedes desempaquetar los valores que necesitas de la siguiente manera:
r, g, b, _ = pygame.Color(100, 100, 100)
si solo deseas r, g and b or, g, *_ = pygame.Color(100, 100, 100)
si solo deseas r y gLa longitud predeterminada de un color es 4. Los colores pueden tener longitudes 1, 2, 3 o 4. Esto es útil si querés desempaquetar a r,g,b,a. Si querés obtener la longitud de un color, usa
len(acolor)
.Deprecated since pygame 2.1.3.
New in pygame 1.9.0.
- grayscale()¶
- returns the grayscale of a Colorgrayscale() -> Color
Devuelve un color que representa la versión en escala de grises de sí mismo utilizando la fórmula de luminosidad que pondera el rojo, verde y azul según sus longitudes de onda.
- lerp()¶
- returns a linear interpolation to the given Color.lerp(Color, float) -> Color
Devuelve un color que es una interpolación entre sí mismo y el color dado en el espacio RGBA. El segundo parámetro determina qué tan lejos estará el resultado entre sí mismo y el otro color. Debe ser un valor entre 0 y 1, donde 0 significa que devolverá el color inicial, el de sí mismo, y 1 significa que devolverá otro color.
New in pygame 2.0.1.
- premul_alpha()¶
- returns a Color where the r,g,b components have been multiplied by the alpha.premul_alpha() -> Color
Devuelve un nuevo color en el que cada uno de los canales de rojo, verde y azul ha sido multiplicado por el canal alfa del color original. El canal alfa permanece sin cambios.
Esto es útil cuando se traba con la bandera de modo
BLEND_PREMULTIPLIED
de mezcla parapygame.Surface.blit()
, que asume que todas las superficies que lo utilizan están utilizando colores con alfa pre-multiplicado.New in pygame 2.0.0.
- update()¶
- Sets the elements of the colorupdate(r, g, b) -> Noneupdate(r, g, b, a=255) -> Noneupdate(color_value) -> None
Establece los elementos del color. Consulta los parámetros de
pygame.Color()
pygame object for color representations para los parámetros de esta función. Si el valor alfa no se estableció, no cambiará.New in pygame 2.0.1.
Edit on GitHub