getpixel


Syntax
#include <graphics.h>
unsigned getpixel(int x, int y);
Description
getpixel gets the color of the pixel located at (x,y).

Return Value
getpixel returns the color of the given pixel.

Windows Notes [WIN]
In the winbgim version, the user might set a pixel color to an RGB color. Therefore, the return value from getpixel might be an ordinary BGI color (integer from 0 to 15) or an RGB color.

See also
getimage
putpixel

Example
/* getpixel example */ 

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>

#define PIXEL_COUNT 1000
#define DELAY_TIME  100  /* in milliseconds */

int main(void)
{
   /* request autodetection */
   int gdriver = DETECT, gmode, errorcode;
   int i, x, y, color, maxx, maxy, maxcolor, seed;

   /* initialize graphics and local variables */
   initgraph(&gdriver, &gmode, "");

   /* read result of initialization */
   errorcode = graphresult();

   if (errorcode != grOk) {  /* an error occurred */
      printf("Graphics error: %s\n", grapherrormsg(errorcode));
      printf("Press any key to halt:");
      getch();
      exit(1);               /* terminate with an error code */
   }

   maxx = getmaxx() + 1;
   maxy = getmaxy() + 1;
   maxcolor = getmaxcolor() + 1;
   while (!kbhit()) {
      seed = random(32767);  /* seed the random number generator */
      srand(seed);
      for (i=0; i<PIXEL_COUNT; i++) {

         x = random(maxx);
         y = random(maxy);
         color = random(maxcolor);
         putpixel(x, y, color);
      }
      delay(DELAY_TIME);
      srand(seed);
      for (i=0; i<PIXEL_COUNT; i++) {
         x = random(maxx);
         y = random(maxy);
         color = random(maxcolor);
         if (color == getpixel(x, y))
            putpixel(x, y, 0);
      }
   }

   /* clean up */
   getch();
   closegraph();
   return 0;
}



    

Back to index