class Rubygame::Color::ColorRGB

Represents color in the RGB (Red, Green, Blue) color space.

Attributes

a[R]
b[R]
g[R]
r[R]

Public Class Methods

new( [r,g,b,a] ) → ColorRGB click to toggle source
new( [r,g,b] ) → ColorRGB
new( color ) → ColorRGB

Create a new instance from an Array or an existing color (of any type). If the alpha (opacity) component is omitted from the array, full opacity will be used.

All color components range from 0.0 to 1.0.

# File lib/rubygame/color/models/rgb.rb, line 42
def initialize( color )
        if color.kind_of?(Array)
                @r, @g, @b, @a = color.collect { |i| i.to_f }
                @a = 1.0 unless @a
        elsif color.respond_to?(:to_rgba_ary)
                @r, @g, @b, @a = color.to_rgba_ary
        end
end
new_from_rgba( rgba ) click to toggle source
# File lib/rubygame/color/models/rgb.rb, line 67
def new_from_rgba( rgba )
        new( rgba )
end
new_from_sdl_rgba( rgba ) click to toggle source
# File lib/rubygame/color/models/rgb.rb, line 71
def new_from_sdl_rgba( rgba )
        new_from_rgba( rgba.collect { |i| i / 255.0 } )
end

Public Instance Methods

inspect()
Alias for: to_s
to_rgba_ary() click to toggle source
# File lib/rubygame/color/models/rgb.rb, line 57
def to_rgba_ary
        return [@r, @g, @b, @a]
end
to_s() click to toggle source
# File lib/rubygame/color/models/rgb.rb, line 61
def to_s
        "#<#{self.class} [#{@r}, #{@g}, #{@b}, #{@a}]>"
end
Also aliased as: inspect
to_sdl_rgba_ary() click to toggle source

Converts the color to an RGBA array of integers ranging from 0 to 255, as SDL wants.

# File lib/rubygame/color/models/rgb.rb, line 53
def to_sdl_rgba_ary
        self.to_rgba_ary.collect { |i| (i * 255).to_i }
end