Função PolyDraw (wingdi.h)

A função PolyDraw desenha um conjunto de segmentos de linha e curvas Bézier.

Sintaxe

BOOL PolyDraw(
  [in] HDC         hdc,
  [in] const POINT *apt,
  [in] const BYTE  *aj,
  [in] int         cpt
);

Parâmetros

[in] hdc

Um identificador para um contexto de dispositivo.

[in] apt

Um ponteiro para uma matriz de estruturas POINT que contém os pontos de extremidade para cada segmento de linha e os pontos de extremidade e pontos de controle para cada curva de Bézier, em unidades lógicas.

[in] aj

Um ponteiro para uma matriz que especifica como cada ponto na matriz lppt é usado. Esse parâmetro pode usar um dos valores a seguir.

Type Significado
PT_MOVETO
Especifica que esse ponto inicia uma figura desarticulada. Esse ponto se torna a nova posição atual.
PT_LINETO
Especifica que uma linha deve ser desenhada da posição atual para esse ponto, que então se torna a nova posição atual.
PT_BEZIERTO
Especifica que esse ponto é um ponto de controle ou ponto final para uma curva Bézier.

PT_BEZIERTO tipos sempre ocorrem em conjuntos de três. A posição atual define o ponto de partida para a curva Bézier. Os dois primeiros pontos PT_BEZIERTO são os pontos de controle e o terceiro ponto PT_BEZIERTO é o ponto final. O ponto final se torna a nova posição atual. Se não houver três pontos PT_BEZIERTO consecutivos, ocorrerá um erro.

 

Um tipo de PT_LINETO ou PT_BEZIERTO pode ser combinado com o valor a seguir usando o operador or bit a bit para indicar que o ponto correspondente é o último ponto em uma figura e a figura é fechada.

Valor Significado
PT_CLOSEFIGURE
Especifica que a figura é fechada automaticamente após a conclusão do tipo PT_LINETO ou PT_BEZIERTO para esse ponto. Uma linha é desenhada deste ponto para o ponto PT_MOVETO ou MoveToEx mais recente.

Esse valor é combinado com o tipo PT_LINETO para uma linha ou com o tipo PT_BEZIERTO do ponto final para uma curva de Bézier, usando o operador OR bit a bit.

A posição atual é definida como o ponto final da linha de fechamento.

[in] cpt

O número total de pontos na matriz lppt , o mesmo que o número de bytes na matriz lpbTypes .

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

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

Comentários

A função PolyDraw pode ser usada no lugar de chamadas consecutivas para as funções MoveToEx, LineTo e PolyBezierTo para desenhar figuras desarticuladas. As linhas e as curvas são desenhadas usando a caneta atual e as figuras não são preenchidas. Se houver um caminho ativo iniciado chamando BeginPath, PolyDraw adicionará ao caminho.

Os pontos contidos na matriz lppt e na matriz lpbTypes indicam se cada ponto faz parte de uma operação MoveTo, LineTo ou PolyBezierTo . Também é possível fechar figuras.

Essa função atualiza a posição atual.

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

Beginpath

EndPath

Funções de linha e curva

Lineto

Visão geral de linhas e curvas

MoveToEx

PONTO

Polybezierto

Polilinha