CreatePolyPolygonRgn

The CreatePolyPolygonRgn function creates a region consisting of a series of polygons. The polygons can overlap.

HRGN CreatePolyPolygonRgn(
  CONST POINT *lppt,        // pointer to array of points
  CONST INT *lpPolyCounts,  // pointer to count of vertices
  int nCount,               // number of integers in array
  int fnPolyFillMode        // polygon fill mode
);
 

Parameters

lppt
Pointer to an array of POINT structures that define the vertices of the polygons. The polygons are specified consecutively. Each polygon is presumed closed and each vertex is specified only once.
lpPolyCounts
Pointer to an array of integers, each of which specifies the number of points in one of the polygons in the array pointed to by lppt.
nCount
Specifies the total number of integers in the array pointed to by lpPolyCounts.
fnPolyFillMode
Specifies the fill mode used to determine which pixels are in the region. This parameter can be one of the following values:
Value Meaning
ALTERNATE Selects alternate mode (fills area between odd-numbered and even-numbered polygon sides on each scan line).
WINDING Selects winding mode (fills any region with a nonzero winding value).

For more information about these modes, see the SetPolyFillMode function.

Return Values

If the function succeeds, the return value is the handle to the region.

If the function fails, the return value is zero.

Windows NT: To get extended error information, call GetLastError.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in wingdi.h.
  Import Library: Use gdi32.lib.

See Also

Regions Overview, Region Functions, CreatePolygonRgn, DeleteObject, POINT, SelectObject, SetPolyFillMode