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