public function rgb($red, $green, $blue)
{
// Don't continue if rgb values are invalid
foreach (array($red, $green, $blue) as $value) {
if (!(self::RGB_MIN <= $value && $value <= self::RGB_MAX)) {
throw new \InvalidArgumentException("RGB values must be between " . self::RGB_MIN . " and " . self::RGB_MAX);
}
}
$xy = ColorConversion::convertRGBToXY($red, $green, $blue);
return $this->xy($xy['x'], $xy['y'])->brightness($xy['bri']);
}