diff options
author | Jonas Gunz <himself@jonasgunz.de> | 2019-05-04 00:57:44 +0200 |
---|---|---|
committer | Jonas Gunz <himself@jonasgunz.de> | 2019-05-04 00:57:44 +0200 |
commit | f15b53eea4b7054826f79836e207751e86ba1cec (patch) | |
tree | 1373166457009a8ca25f3edf66cbdb99987f0585 /color.c | |
parent | 099c4db0a3a8e77deb7af7436faec802fe9401de (diff) | |
download | AsciiMap-f15b53eea4b7054826f79836e207751e86ba1cec.tar.gz |
Reorganised folder structure
Diffstat (limited to 'color.c')
-rw-r--r-- | color.c | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/color.c b/color.c deleted file mode 100644 index d822d56..0000000 --- a/color.c +++ /dev/null @@ -1,74 +0,0 @@ -#include "color.h" - -struct console_color colors[] = { //Standard VGA colors - {0, 0, 0, "30"}, //Black - {170, 0, 0, "31"}, //red - {0, 170, 0, "32"}, //Green - {170, 85, 0, "33"}, //Brown - {0, 0, 170, "34"}, //blue - {170, 0, 170, "35"}, //Magenta - {0, 170, 170, "36"}, //Cyan - {170,170,170, "37"}, //Grey - {85,85,85, "30;1"}, - {255,85,85, "31;1"}, - {85,255,85, "32;1"}, - {255,255,85, "33;1"}, - {85,85,255, "34;1"}, - {255,85,255, "35;1"}, - {85,255,255, "36;1"}, - {255, 255, 255, "37;1"} -}; - -uint8_t rgb_avg(uint8_t R, uint8_t G, uint8_t B) -{ - uint8_t ret; - - ret = sqrt( 0.299*pow(R,2) + 0.587*pow(G,2) + 0.114*pow(B,2) ); //(char)(R+R+B+G+G+G)/6; - - return ret; -} - -char* calc_col(uint8_t R, uint8_t G, uint8_t B) -{ - unsigned int nearest_num = 0; - uint8_t a2[3]; - a2[0] = colors[0].R; - a2[1] = colors[0].G; - a2[2] = colors[0].B; - - uint8_t a1[] = {R,G,B}; - - //Normalize the color - //Does not really work all that well - /*while(a1[0] < 255 && a1[1] < 255 && a1[2] < 255) - { - a1[0]++; - a1[1]++; - a1[2]++; - }*/ - - float nearest_val = distance( a1, a2 ); - - for( unsigned int i = 1; i < _COLORS_SIZE; i++) - { - a2[0] = colors[i].R; - a2[1] = colors[i].G; - a2[2] = colors[i].B; - - float dist = distance(a1, a2); - if(dist < nearest_val){ - nearest_num = i; - nearest_val = dist; - } - } - return colors[ nearest_num ].no; -} -char* calc_col_ansi(uint8_t R, uint8_t G, uint8_t B) -{ - int num = 36 * (R/51) + 6 * (G/51) + (B/51); - char *c = malloc(9); - snprintf( c, 6, "38;5;" ); - snprintf( c + 5, 4, "%i", num + 16 ); - - return c; -} |