Add files via upload
This commit is contained in:
committed by
GitHub
parent
ca88b9db5c
commit
f570f6885e
@@ -141,3 +141,92 @@ void color_scheme_asym(int scheme, double value, double scale, int time, double
|
||||
}
|
||||
}
|
||||
|
||||
void color_scheme_palette(int scheme, int palette, double value, double scale, int time, double rgb[3]) /* color scheme */
|
||||
{
|
||||
double hue, y, r, amplitude;
|
||||
int intpart;
|
||||
|
||||
/* saturation = r, luminosity = y */
|
||||
switch (scheme) {
|
||||
case (C_LUM):
|
||||
{
|
||||
hue = COLORHUE + (double)time*COLORDRIFT/(double)NSTEPS;
|
||||
if (hue < 0.0) hue += 360.0;
|
||||
if (hue >= 360.0) hue -= 360.0;
|
||||
r = 0.9;
|
||||
amplitude = color_amplitude(value, scale, time);
|
||||
y = LUMMEAN + amplitude*LUMAMP;
|
||||
intpart = (int)y;
|
||||
y -= (double)intpart;
|
||||
hsl_to_rgb_palette(hue, r, y, rgb, palette);
|
||||
break;
|
||||
}
|
||||
case (C_HUE):
|
||||
{
|
||||
r = 0.9;
|
||||
amplitude = color_amplitude(value, scale, time);
|
||||
y = 0.5;
|
||||
hue = HUEMEAN + amplitude*HUEAMP;
|
||||
if (hue < 0.0) hue += 360.0;
|
||||
if (hue >= 360.0) hue -= 360.0;
|
||||
hsl_to_rgb_palette(hue, r, y, rgb, palette);
|
||||
break;
|
||||
}
|
||||
case (C_ONEDIM):
|
||||
{
|
||||
amplitude = color_amplitude(value, scale, time);
|
||||
amp_to_rgb_palette(0.5*(1.0 + amplitude), rgb, palette);
|
||||
break;
|
||||
}
|
||||
case (C_ONEDIM_LINEAR):
|
||||
{
|
||||
amplitude = color_amplitude_linear(value, scale, time);
|
||||
if (amplitude > 1.0) amplitude -= 1.0;
|
||||
else if (amplitude < 0.0) amplitude += 1.0;
|
||||
amp_to_rgb_palette(amplitude, rgb, palette);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void color_scheme_asym_palette(int scheme, int palette, double value, double scale, int time, double rgb[3]) /* color scheme */
|
||||
{
|
||||
double hue, y, r, amplitude;
|
||||
int intpart;
|
||||
|
||||
/* saturation = r, luminosity = y */
|
||||
switch (scheme) {
|
||||
case (C_LUM):
|
||||
{
|
||||
hue = COLORHUE + (double)time*COLORDRIFT/(double)NSTEPS;
|
||||
if (hue < 0.0) hue += 360.0;
|
||||
if (hue >= 360.0) hue -= 360.0;
|
||||
r = 0.9;
|
||||
amplitude = color_amplitude(value, scale, time);
|
||||
y = LUMMEAN + amplitude*LUMAMP;
|
||||
intpart = (int)y;
|
||||
y -= (double)intpart;
|
||||
hsl_to_rgb_palette(hue, r, y, rgb, palette);
|
||||
break;
|
||||
}
|
||||
case (C_HUE):
|
||||
{
|
||||
r = 0.9;
|
||||
amplitude = color_amplitude_asym(value, scale, time);
|
||||
y = 0.5;
|
||||
hue = HUEMEAN + 0.8*amplitude*HUEAMP;
|
||||
if (hue < 0.0) hue += 360.0;
|
||||
if (hue >= 360.0) hue -= 360.0;
|
||||
hsl_to_rgb_palette(hue, r, y, rgb, palette);
|
||||
break;
|
||||
}
|
||||
case (C_ONEDIM):
|
||||
{
|
||||
amplitude = color_amplitude(value, scale, time);
|
||||
amp_to_rgb_palette(amplitude, rgb, palette);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user