class Recolor::Models::RGB

Constants

MATRIX

Public Instance Methods

hex(tuple) click to toggle source
# File lib/recolor/models/rgb.rb, line 12
def hex(tuple)
  hex = tuple.map do |v|
    v = v * 255
    v = v.round
    v = v.to_s(16)
    v = v.length == 1 ? "0" + v : v
  end

  return hex
end
xyz(tuple) click to toggle source
# File lib/recolor/models/rgb.rb, line 23
def xyz(tuple)
  rgb = tuple.map do |v|
    v < 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055)**2.4
  end

  rgb = Matrix[rgb].transpose
  xyz = XYZ::MATRIX * rgb
  xyz = xyz.transpose
  xyz = xyz.row(0)
  xyz = xyz.to_a

  return xyz
end