class Rainbow::Color::RGB
def self.to_ansi_domain(value)
def self.to_ansi_domain(value) (6 * (value / 256.0)).to_i end
def code_from_rgb
def code_from_rgb 16 + self.class.to_ansi_domain(r) * 36 + self.class.to_ansi_domain(g) * 6 + self.class.to_ansi_domain(b) end
def codes
def codes super + [5, code_from_rgb] end
def initialize(ground, *values)
def initialize(ground, *values) raise ArgumentError.new( "RGB value outside 0-255 range" ) if values.min < 0 or values.max > 255 super(ground, 8) @r, @g, @b = values end