From 8b8e15557e8e8199eabfccc205824f027bcd3f6a Mon Sep 17 00:00:00 2001 From: jules Date: Tue, 7 Jan 2014 00:29:36 -0500 Subject: optimize rgb function --- js/color.js | 41 ++++++++++++++++------------------------- 1 file changed, 16 insertions(+), 25 deletions(-) (limited to 'js') diff --git a/js/color.js b/js/color.js index d51bb67..da4f430 100644 --- a/js/color.js +++ b/js/color.js @@ -1,8 +1,10 @@ // http://www.easyrgb.com/index.php?X=MATH&H=01#text1 function rgb(x,y,z){ - if (x.length) { r=x[0]; g=x[1]; b =x[2]; } - else { r=x; g=y; b=z } + r=x; g=y; b=z +} +function rgbref(rgb){ + r=rgb[0]; g=rgb[1]; b=rgb[2]; } function black(){ rgb(0,0,0) } function white(){ rgb(255,255,255) } @@ -52,24 +54,20 @@ function xyz2rgb(xyz){ return [r,g,b] } -function xyz2hunterlab (X,Y,Z) { - if (X.length) { - Z = X[2] - Y = X[1] - X = X[0] - } +function xyz2hunterlab (XYZ) { + var X = XYZ[0] + var Y = XYZ[1] + var Z = XYZ[2] var L = 10 * sqrt( Y ) var a = 17.5 * ( ( ( 1.02 * X ) - Y ) / sqrt( Y ) ) var b = 7 * ( ( Y - ( 0.847 * Z ) ) / sqrt( Y ) ) return [L,a,b] } -function hunterlab2xyz (L,a,b) { - if (L.length) { - b = L[2] - a = L[1] - L = L[0] - } +function hunterlab2xyz (Lab) { + var L = Lab[0] + var a = Lab[1] + var b = Lab[2] var_Y = L / 10 var_X = a / 17.5 * L / 10 var_Z = b / 7 * L / 10 @@ -122,12 +120,10 @@ function cielab2xyz (lab){ return [x,y,z] } -function rgb2hsl (R,G,B){ - if (R.length) { - B = R[2] - G = R[1] - R = R[0] - } +function rgb2hsl (RGB){ + var R = RGB[0] + var G = RGB[1] + var B = RGB[2] var var_R = ( R / 255 ) //RGB from 0 to 255 var var_G = ( G / 255 ) var var_B = ( B / 255 ) @@ -164,11 +160,6 @@ function rgb2hsl (R,G,B){ } function hsl2rgb (H, S, L) { var R,G,B; - if (H.length) { - L = H[2] - S = H[1] - H = H[0] - } var var_1, var_2; if ( S == 0 ) { //HSL from 0 to 1 R = L * 255 //RGB results from 0 to 255 -- cgit v1.2.3-70-g09d2