PolyPolygon function
The PolyPolygon function draws a series of closed polygons. Each polygon is outlined by using the current pen and filled by using the current brush and polygon fill mode. The polygons drawn by this function can overlap.
Syntax
BOOL PolyPolygon( _In_ HDC hdc, _In_ const POINT *lpPoints, _In_ const INT *lpPolyCounts, _In_ int nCount );
Parameters
 hdc [in]

A handle to the device context.
 lpPoints [in]

A pointer to an array of POINT structures that define the vertices of the polygons, in logical coordinates. The polygons are specified consecutively. Each polygon is closed automatically by drawing a line from the last vertex to the first. Each vertex should be specified once.
 lpPolyCounts [in]

A pointer to an array of integers, each of which specifies the number of points in the corresponding polygon. Each integer must be greater than or equal to 2.
 nCount [in]

The total number of polygons.
Return value
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero.
Remarks
The current position is neither used nor updated by this function.
Any extra points are ignored. To draw the polygons with more points, divide your data into groups, each of which have less than the maximum number of points, and call the function for each group of points. Note, it is best to have a polygon in only one of the groups.
Requirements
Minimum supported client 
Windows 2000 Professional [desktop apps only] 

Minimum supported server 
Windows 2000 Server [desktop apps only] 
Header 

Library 

DLL 

See also
 Filled Shapes Overview
 Filled Shape Functions
 GetPolyFillMode
 POINT
 Polygon
 Polyline
 PolylineTo
 SetPolyFillMode