Função CreatePolygonRgn (wingdi.h)

A função CreatePolygonRgn cria uma região poligonal.

Sintaxe

HRGN CreatePolygonRgn(
  [in] const POINT *pptl,
  [in] int         cPoint,
  [in] int         iMode
);

Parâmetros

[in] pptl

Um ponteiro para uma matriz de estruturas POINT que definem os vértices do polígono em unidades lógicas. O polígono é presumidamente fechado. Cada vértice só pode ser especificado uma vez.

[in] cPoint

O número de pontos na matriz.

[in] iMode

O modo de preenchimento usado para determinar quais pixels estão na região. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
ALTERNATIVO
Seleciona o modo alternativo (preenche a área entre os lados do polígono numerado ímpar e com numeração uniforme em cada linha de verificação).
ENROLAMENTO
Seleciona o modo de enrolamento (preenche qualquer região com um valor de enrolamento diferente de zero).
 

Para obter mais informações sobre esses modos, consulte a função SetPolyFillMode .

Valor retornado

Se a função for bem-sucedida, o valor retornado será o identificador para a região.

Se a função falhar, o valor retornado será NULL.

Comentários

Quando você não precisar mais do objeto HRGN , chame a função DeleteObject para excluí-la.

As coordenadas de região são representadas como inteiros com sinal de 27 bits.

As regiões criadas pelos métodos Create<shape>Rgn (como CreateRectRgn e CreatePolygonRgn) incluem apenas o interior da forma; a estrutura de tópicos da forma é excluída da região. Isso significa que qualquer ponto em uma linha entre dois vértices sequenciais não está incluído na região. Se você chamasse PtInRegion para tal ponto, ele retornaria zero como resultado.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho wingdi.h (inclua Windows.h)
Biblioteca Gdi32.lib
DLL Gdi32.dll

Confira também

CreatePolyPolygonRgn

Createrectrgn

CreateRectRgnIndirect

CreateRoundRectRgn

DeleteObject

ExtCreateRegion

GetRegionData

PONTO

Funções de região

Visão geral das regiões

Selectobject

Setpolyfillmode