NAME

Convert::Color::RGB - a color value represented as red/green/blue

SYNOPSIS

Directly:

use Convert::Color::RGB;

my $red = Convert::Color::RGB->new( 1, 0, 0 );

# Can also parse strings
my $pink = Convert::Color::RGB->new( '1,0.7,0.7' );

Via Convert::Color:

use Convert::Color;

my $cyan = Convert::Color->new( 'rgb:0,1,1' );

DESCRIPTION

Objects in this class represent a color in RGB space, as a set of three floating-point values in the range 0 to 1.

For representations using 8- or 16-bit integers, see Convert::Color::RGB8 and Convert::Color::RGB16.

CONSTRUCTOR

$color = Convert::Color::RGB->new( $red, $green, $blue )

Returns a new object to represent the set of values given. These values should be floating-point numbers between 0 and 1. Values outside of this range will be clamped.

$color = Convert::Color::RGB->new( $string )

Parses $string for values, and construct a new object similar to the above three-argument form. The string should be in the form

red,green,blue

containing the three floating-point values in decimal notation.

METHODS

$r = $color->red

$g = $color->green

$b = $color->blue

Accessors for the three components of the color.

( $red, $green, $blue ) = $color->rgb

Returns the individual red, green and blue color components of the color value.

$mix = $color->alpha_blend( $other, [ $alpha ] )

Return a new color which is a blended combination of the two passed into it. The optional $alpha parameter defines the mix ratio between the two colors, defaulting to 0.5 if not defined. Values closer to 0 will blend more of $color, closer to 1 will blend more of $other.

SEE ALSO

AUTHOR

Paul Evans <leonerd@leonerd.org.uk>