22 #define UNDEFINED -99999
42 void RGB_To_HSV(
double r,
double g,
double b,
double *h,
double *s,
double *
v )
52 *s = (max != 0.0) ? ( (max-
min)/max ) : 0.0;
57 double delta = max-
min;
70 void HSV_To_RGB(
double *r,
double *g,
double *
b,
double h,
double s,
double v )
96 t = v*( 1.0-( s*(1.0-f) ) );
134 void ShiftPalette(
unsigned char Palette[769],
double DH,
double DS,
double DV,
double DsH,
double DsS,
double DsV )
136 double r,
g,
b,
h, s,
v;
138 for (i = 192; i < 224; i++) {
139 r = ( (double) .003921568627 )*Palette[i*3];
140 g = ( (double) .003921568627 )*Palette[i*3+1];
141 b = ( (double) .003921568627 )*Palette[i*3+2];
161 Palette[i*3] = (
unsigned char) (r*255);
162 Palette[i*3+1] = (
unsigned char) (g*255);
163 Palette[i*3+2] = (
unsigned char) (b*255);
165 for (i = 224; i < 256; i++) {
166 r = ( (double) .003921568627 )*Palette[i*3];
167 g = ( (double) .003921568627 )*Palette[i*3+1];
168 b = ( (double) .003921568627 )*Palette[i*3+2];
188 Palette[i*3] = (
unsigned char) (r*255);
189 Palette[i*3+1] = (
unsigned char) (g*255);
190 Palette[i*3+2] = (
unsigned char) (b*255);