diff options
| author | Jules Laplace <jules@okfoc.us> | 2014-11-22 23:19:36 -0500 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2014-11-22 23:19:36 -0500 |
| commit | 070b5e6d9d3c7e23c06f0ae0b75026923529c24d (patch) | |
| tree | 89c430dd17ca54ff60f885ecd99cf6cfa0f0b7ff /js/color.js | |
| parent | 04537ed34d443d0610b77420d1dbef64bc05fbfa (diff) | |
| parent | 1631cdf643283fc71bc9d70b5dcbce03ab9c2386 (diff) | |
Merge branch 'master' of lmno:dither
Diffstat (limited to 'js/color.js')
| -rw-r--r-- | js/color.js | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/js/color.js b/js/color.js index ba60db7..215c3e6 100644 --- a/js/color.js +++ b/js/color.js @@ -16,11 +16,11 @@ function rgb2xyz(rgb){ var var_G = ( rgb[1] / 255 ) //G from 0 to 255 var var_B = ( rgb[2] / 255 ) //B from 0 to 255 - if ( var_R > 0.04045 ) var_R = ( ( var_R + 0.055 ) / 1.055 ) ^ 2.4 + if ( var_R > 0.04045 ) var_R = Math.pow( ( var_R + 0.055 ) / 1.055, 2.4) else var_R = var_R / 12.92 - if ( var_G > 0.04045 ) var_G = ( ( var_G + 0.055 ) / 1.055 ) ^ 2.4 + if ( var_G > 0.04045 ) var_G = Math.pow( ( var_G + 0.055 ) / 1.055, 2.4) else var_G = var_G / 12.92 - if ( var_B > 0.04045 ) var_B = ( ( var_B + 0.055 ) / 1.055 ) ^ 2.4 + if ( var_B > 0.04045 ) var_B = Math.pow( ( var_B + 0.055 ) / 1.055, 2.4) else var_B = var_B / 12.92 var_R = var_R * 100 @@ -57,7 +57,7 @@ function xyz2rgb(xyz){ function xyz2hunterlab (XYZ) { var X = XYZ[0] - var Y = XYZ[1] + var Y = XYZ[1] || 1e-6 // otherwise divide-by-zero error when converting rgb(0,0,0) var Z = XYZ[2] var L = 10 * sqrt( Y ) var a = 17.5 * ( ( ( 1.02 * X ) - Y ) / sqrt( Y ) ) @@ -107,16 +107,16 @@ function cielab2xyz (lab){ var var_X = lab[1] / 500 + var_Y var var_Z = var_Y - lab[2] / 200 - if ( var_Y^3 > 0.008856 ) var_Y = Math.pow(var_Y, 3) + if ( Math.pow(var_Y, 3) > 0.008856 ) var_Y = Math.pow(var_Y, 3) else var_Y = ( var_Y - 16 / 116 ) / 7.787 - if ( var_X^3 > 0.008856 ) var_X = Math.pow(var_X, 3) + if ( Math.pow(var_X, 3) > 0.008856 ) var_X = Math.pow(var_X, 3) else var_X = ( var_X - 16 / 116 ) / 7.787 - if ( var_Z^3 > 0.008856 ) var_Z = Math.pow(var_Z, 3) + if ( Math.pow(var_Z, 3) > 0.008856 ) var_Z = Math.pow(var_Z, 3) else var_Z = ( var_Z - 16 / 116 ) / 7.787 - var X = REF_X * var_X //ref_X = 95.047 Observer= 2°, Illuminant= D65 - var Y = REF_Y * var_Y //ref_Y = 100.000 - var Z = REF_Z * var_Z //ref_Z = 108.883 + var x = REF_X * var_X //ref_X = 95.047 Observer= 2°, Illuminant= D65 + var y = REF_Y * var_Y //ref_Y = 100.000 + var z = REF_Z * var_Z //ref_Z = 108.883 return [x,y,z] } |
