ColorExtension

Color Extension methods.
hsl(hue, saturation, lightness, transparency) HSL color transform.
Parameters:
- hue: float, hue color component, hue is a degree on the color wheel from 0 to 360. 0 is red, 120 is green, 240 is blue.
- saturation: float, saturation color component, saturation is a percentage value, 0 means a shade of gray and 100 is the full color.
- lightness: float, lightness color component, Lightness is also a percentage; 0 is black, 100 is white.
- transparency: float, transparency color component, transparency is also a percentage; 0 is opaque, 100 is transparent.
Returns: color
rgb_to_hsl(red, green, blue) Convert RGB to HSL color values
Parameters:
- red: float, red color component.
- green: float, green color component.
- blue: float, blue color component.
Returns: tuple with 3 float values, hue, saturation and lightness.
complement(primary) Complementary of selected color
Parameters:
- primary: color, the primary
Returns: color.
invert(primary) Inverts selected color.
Parameters:
- primary: color, the primary.
Returns: color.
is_cool(base) Color is cool or warm.
Parameters:
- base: color, the color to check.
Returns: bool.
temperature(base) Color temperature.
Parameters:
- base: color, the color to check.
Returns: bool.
is_high_key(base) Color is high key (orange yellow green).
Parameters:
- base: color, the color to check.
Returns: bool.
mix(base, mix, rate) Mix two colors together.
Parameters:
- base: color, the base color.
- mix: color, the color to mix.
- rate: float, default=0.5, the rate of mixture, range within 0.0 and 1.0.
Returns: color.
analog(primary) Selects 2 near spectrum colors (H +/- 45).
Parameters:
- primary: color, the base color.
Returns: tuple with 2 colors.
triadic(primary) Selects 2 far spectrum colors (H +/- 120).
Parameters:
- primary: color, the base color.
Returns: tuple with 2 colors.
tetradic(primary) Uses primary and the complementary color, + 60º to form a rectangular pattern on the color wheel.
Parameters:
- primary: color, the base color.
Returns: tuple with 3 colors.
square(primary) Uses primary and generate 3 equally spaced (90º) colors.
Parameters:
- primary: color, the base color.
Returns: tuple with 3 colors.
shift_hue(base, angle) Shift the hue/angle of the provided color.
Parameters:
- base: color, base color.
- angle: float, angle to shift the hue of the base color.
Returns: color.
saturate(base, rate) Saturate the provided color by a rate of the difference to its maximum.
Parameters:
- base: color, base color.
- rate: float, default=0.5, rate to saturate the base color (the higher the saturation of the color the less the effect).
Returns: color.
desaturate(base, rate) Desaturate the provided color by a rate of the difference to its minimum.
Parameters:
- base: color, base color.
- rate: float, default=0.5, rate to desaturate the base color (the lower the saturation of the color the less the effect).
Returns: color.
lighten(base, rate) lighten the provided color by a rate of the difference to its maximum.
Parameters:
- base: color, base color.
- rate: float, default=0.5, rate to lighten the base color (the higher the lightness of the color the less the effect).
Returns: color.
darken(base, rate) darken the provided color by a rate of the difference to its minimum.
Parameters:
- base: color, base color.
- rate: float, default=0.5, rate to darken the base color (the lower the lightness of the color the less the effect).
Returns: color.
color_to_hsl(base) Convert the provided color into HSL values.
Parameters:
- base: color, base color.
Returns: tuple with 3 floats.
Biblioteca Pine
Siguiendo fielmente el espíritu de TradingView, el autor ha publicado este código Pine como una biblioteca de código, permitiendo que otros programadores de Pine en nuestra comunidad puedan volver a utilizarlo. ¡Un brindis por el autor! Puede utilizar esta biblioteca de forma privada o en otras publicaciones de código abierto, pero tenga en cuenta que la reutilización de este código en publicaciones se rige por las Normas internas.
Exención de responsabilidad
Biblioteca Pine
Siguiendo fielmente el espíritu de TradingView, el autor ha publicado este código Pine como una biblioteca de código, permitiendo que otros programadores de Pine en nuestra comunidad puedan volver a utilizarlo. ¡Un brindis por el autor! Puede utilizar esta biblioteca de forma privada o en otras publicaciones de código abierto, pero tenga en cuenta que la reutilización de este código en publicaciones se rige por las Normas internas.