al_draw_filled_polygon_with_holes(3)  al_draw_filled_polygon_with_holes(3) 
NAME
al_draw_filled_polygon_with_holes  Allegro 5 APISYNOPSIS

#include <allegro5/allegro_primitives.h> void al_draw_filled_polygon_with_holes(const float *vertices, const int *vertex_counts, ALLEGRO_COLOR color)
DESCRIPTION
Draws a filled simple polygon with zero or more other simple polygons subtracted from it  the holes. The holes cannot touch or intersect with the outline of the filled polygon. •
 vertices  Interleaved array of (x, y) vertex coordinates for each of the polygons, including holes.
 •
 vertex_counts  Number of vertices for each polygon. The number of vertices in the filled polygon is given by vertex_counts[0] and must be at least three. Subsequent elements indicate the number of vertices in each hole. The array must be terminated with an element with value zero.
 •
 color  Color of the filled polygon
All hole vertices must use the opposite order (clockwise with y down) of the polygon vertices. All hole vertices must be inside the main polygon and no hole may overlap the main polygon.
For example:

float vertices[] = { 0, 0, // filled polygon, upper left corner 0, 100, // filled polygon, lower left corner 100, 100, // filled polygon, lower right corner 100, 0, // filled polygon, upper right corner 10, 10, // hole, upper left 90, 10, // hole, upper right 90, 90 // hole, lower right }; int vertex_counts[] = { 4, // number of vertices for filled polygon 3, // number of vertices for hole 0 // terminator };
There are 7 vertices: four for an outer square from (0, 0) to (100, 100) in anticlockwise order, and three more for an inner triangle in clockwise order. The outer main polygon uses vertices 0 to 3 (inclusive) and the hole uses vertices 4 to 6 (inclusive).
SINCE
5.1.0SEE ALSO
al_draw_filled_polygon(3), al_draw_filled_polygon_with_holes(3), al_triangulate_polygon(3)Allegro reference manual 