Header file:
graphics.h
Synopsis:
void setpalette(int colornum, int color);
Description:
setpalette() changes the color of palette. For example, setpalette(1, 5) changes the color number 1 in the current palette to color number 5.
setpalette function in c graphics
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>
int main(void) {
/* request auto detection */
int graphicDriver = DETECT, graphicMode;
int color, err, x1, y1, x2, y2;
struct palettetype pal;
/* initialize graphics and local variables */
initgraph(&graphicDriver, &graphicMode,
"C:/TURBOC3/BGI");
/* read result of initialization */
err = graphresult();
if (err != grOk) {
/* an error occurred */
printf("Graphics Error: %s\n",
grapherrormsg(err));
getch();
return 0;
}
/* grab a copy of the palette */
getpalette(&pal);
x1 = 0, y1 = 0;
x2 = 200, y2 = 30;
/* display the default palette colors */
for (color=1; color<=getmaxcolor(); color++) {
/*
* draw a rectangle using current draw color
* fill it using current fill color
*/
setcolor(color);
setfillstyle(SOLID_FILL, color);
rectangle(x1, y1, x2, y2);
floodfill(x1 + 1, y1 + 1, color);
y1 = y1 + 30;
y2 = y2 + 30;
/* sleep for 400 milliseconds */
delay(400);
}
/* black out the colors one by one */
for (color=1; color<=getmaxcolor(); color = color + 2) {
setpalette(color, BLACK);
delay(300);
}
/* revert back the colors */
for (color= 2; color<=getmaxcolor(); color = color + 2) {
setpalette(color, 15);
delay(300);
}
/* restore the palette colors */
setallpalette(&pal);
/* clean up */
getch();
closegraph();
return 0;
}
Output: (setpalette built-in function in c graphics.h)
No comments:
Post a Comment