fillpoly


Syntax

#include <graphics.h>

void fillpoly(int numpoints, int *polypoints);

Description
fillpoly draws the outline of a polygon with numpoints points in the current line style and color (just as drawpoly does), then fills the polygon using the current fill pattern and fill color.

polypoints points to a sequence of (numpoints * 2) integers. Each pair of integers gives the x- and y-coordinates of a point on the polygon.

Return Value
None.

See also
drawpoly
floodfill
graphresult
setfillstyle

Example

/* fillpoly example */ 



#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>



int main(void)

{

   /* request autodetection */

   int gdriver = DETECT, gmode, errorcode;

   int i, maxx, maxy;



   /* our polygon array */

   int poly[8];



   /* 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();

   maxy = getmaxy();



   poly[0] = 20;             /* first vertex */

   poly[1] = maxy / 2;

   poly[2] = maxx - 20;      /* second vertex */

   poly[3] = 20;

   poly[4] = maxx - 50;      /* third vertex */

   poly[5] = maxy - 20;

   poly[6] = maxx / 2;       /* fourth, fillpoly automatically */

   poly[7] = maxy / 2;       /* closes the polygon */





   /* loop through the fill patterns */

   for (i=EMPTY_FILL; i<USER_FILL; i++) {

      /* set fill pattern */

      setfillstyle(i, getmaxcolor());



      /* draw a filled polygon */

      fillpoly(4, poly);

      getch();

   }



   /* clean up */

   closegraph();

   return 0;

}


Back to index