1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
-
- enum {
- COLOR_BLACK = 0,
- COLOR_RED,
- COLOR_GREEN,
- COLOR_YELLOW,
- COLOR_BLUE,
- COLOR_MAGENTA,
- COLOR_CYAN,
- COLOR_WHITE
- };
-
- static float RGBMap[9][3] = {
- {0, 0, 0},
- {1, 0, 0},
- {0, 1, 0},
- {1, 1, 0},
- {0, 0, 1},
- {1, 0, 1},
- {0, 1, 1},
- {1, 1, 1},
- {0.5, 0.5, 0.5}
- };
-
- static void SetColor(int c)
- {
- if (glutGet(GLUT_WINDOW_RGBA))
- glColor3fv(RGBMap[c]);
- else
- glIndexf(c);
- }
-
- static void InitMap(void)
- {
- int i;
-
- if (rgb)
- return;
-
- for (i = 0; i < 9; i++)
- glutSetColor(i, RGBMap[i][0], RGBMap[i][1], RGBMap[i][2]);
- }
-
- static void SetFogRamp(int density, int startIndex)
- {
- int fogValues, colorValues;
- int i, j, k;
- float intensity;
-
- fogValues = 1 << density;
- colorValues = 1 << startIndex;
- for (i = 0; i < colorValues; i++) {
- for (j = 0; j < fogValues; j++) {
- k = i * fogValues + j;
- intensity = (i * fogValues + j * colorValues) / 255.0;
- glutSetColor(k, intensity, intensity, intensity);
- }
- }
- }
-
- static void SetGreyRamp(void)
- {
- int i;
- float intensity;
-
- for (i = 0; i < 255; i++) {
- intensity = i / 255.0;
- glutSetColor(i, intensity, intensity, intensity);
- }
- }
|