Compartilhar via


Função GetPath (wingdi.h)

A função GetPath recupera as coordenadas que definem os pontos de extremidade das linhas e os pontos de controle de curvas encontrados no caminho selecionado no contexto do dispositivo especificado.

Sintaxe

int GetPath(
  [in]  HDC     hdc,
  [out] LPPOINT apt,
  [out] LPBYTE  aj,
  [in]  int     cpt
);

Parâmetros

[in] hdc

Um identificador para um contexto de dispositivo que contém um caminho fechado.

[out] apt

Um ponteiro para uma matriz de estruturas POINT que recebe os pontos de extremidade de linha e pontos de controle de curva, em coordenadas lógicas.

[out] aj

Um ponteiro para uma matriz de bytes que recebe os tipos de vértice. Esse parâmetro pode usar um dos valores a seguir.

Tipo Descrição
PT_MOVETO
Especifica que o ponto correspondente no parâmetro lpPoints inicia uma figura desarticulada.
PT_LINETO
Especifica que o ponto anterior e o ponto correspondente em lpPoints são os pontos de extremidade de uma linha.
PT_BEZIERTO
Especifica que o ponto correspondente em lpPoints é um ponto de controle ou ponto final para uma curva de Bézier.

PT_BEZIERTO valores sempre ocorrem em conjuntos de três. O ponto no caminho imediatamente anterior a eles 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 (se embutido em código).

 

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

Sinalizador Descrição
PT_CLOSEFIGURE
Especifica que a figura é fechada automaticamente depois que a linha ou a curva correspondente é desenhada. A figura é fechada desenhando uma linha do ponto de extremidade de linha ou curva para o ponto correspondente ao último PT_MOVETO.

[in] cpt

O número total de estruturas POINT que podem ser armazenadas na matriz apontada por lpPoints. Esse valor deve ser o mesmo que o número de bytes que podem ser colocados na matriz apontada por lpTypes.

Valor retornado

Se o parâmetro nSize for diferente de zero, o valor retornado será o número de pontos enumerados. Se nSize for 0, o valor retornado será o número total de pontos no caminho (e GetPath não gravará nada nos buffers). Se nSize for diferente de zero e for menor que o número de pontos no caminho, o valor retornado será 1.

Comentários

O contexto do dispositivo identificado pelo parâmetro hdc deve conter um caminho fechado.

Os pontos do caminho são retornados em coordenadas lógicas. Os pontos são armazenados no caminho nas coordenadas do dispositivo, portanto, o GetPath altera os pontos das coordenadas do dispositivo para as coordenadas lógicas usando o inverso da transformação atual.

A função FlattenPath pode ser chamada antes de GetPath para converter todas as curvas no caminho em segmentos de linha.

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

FlattenPath

PONTO

Funções de caminho

Visão geral de caminhos

PolyDraw

WidenPath