April 05
Prof. Ismael H. F. Santos -
ismael@tecgraf.puc-rio.br
2
XYZ
®
RGB
ref_X = 95.047 //
Observer = 2°, Illuminant = D65
ref_Y = 100.000
ref_Z = 108.883
var_X = X / 100 //X = From 0 to ref_X
var_Y = Y / 100 //Y = From 0 to ref_Y
var_Z = Z / 100 //Z = From 0 to ref_Y
var_R = var_X * 3.2406 + var_Y * -1.5372 + var_Z * -0.4986
var_G = var_X * -0.9689 + var_Y * 1.8758 + var_Z * 0.0415
var_B = var_X * 0.0557 + var_Y * -0.2040 + var_Z * 1.0570
if ( var_R > 0.0031308 ) var_R = 1.055 * ( var_R ^ ( 1 / 2.4 ) ) - 0.055
else var_R = 12.92 * var_R
if ( var_G > 0.0031308 ) var_G = 1.055 * ( var_G ^ ( 1 / 2.4 ) ) - 0.055
else var_G = 12.92 * var_G
if ( var_B > 0.0031308 ) var_B = 1.055 * ( var_B ^ ( 1 / 2.4 ) ) - 0.055
else var_B = 12.92 * var_B
R = var_R * 255
G = var_G * 255
B = var_B * 255
http://www.easyrgb.com
/