Compartir a través de


Función PolyDraw (wingdi.h)

La función PolyDraw dibuja un conjunto de segmentos de línea y curvas Bézier.

Sintaxis

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

Parámetros

[in] hdc

Identificador de un contexto de dispositivo.

[in] apt

Puntero a una matriz de estructuras point que contiene los puntos de conexión de cada segmento de línea y los puntos de conexión y puntos de control para cada curva Bézier, en unidades lógicas.

[in] aj

Puntero a una matriz que especifica cómo se usa cada punto de la matriz de lppt. Este parámetro puede ser uno de los siguientes valores.

Tipo Significado
PT_MOVETO
Especifica que este punto inicia una ilustración no separada. Este punto se convierte en la nueva posición actual.
PT_LINETO
Especifica que se va a dibujar una línea desde la posición actual hasta este punto, que luego se convierte en la nueva posición actual.
PT_BEZIERTO
Especifica que este punto es un punto de control o punto final para una curva Bézier.

PT_BEZIERTO tipos siempre se producen en conjuntos de tres. La posición actual define el punto inicial de la curva Bézier. Los dos primeros puntos PT_BEZIERTO son los puntos de control y el tercer punto de PT_BEZIERTO es el punto final. El punto final se convierte en la nueva posición actual. Si no hay tres puntos de PT_BEZIERTO consecutivos, se produce un error.

 

Un tipo PT_LINETO o PT_BEZIERTO se puede combinar con el siguiente valor mediante el operador bit a bit OR para indicar que el punto correspondiente es el último punto de una figura y se cierra la figura.

Valor Significado
PT_CLOSEFIGURE
Especifica que la figura se cierra automáticamente después de que se realice el tipo de PT_LINETO o PT_BEZIERTO para este punto. Una línea se dibuja desde este punto hasta la PT_MOVETO más reciente o punto de MoveToEx.

Este valor se combina con el tipo de PT_LINETO para una línea o con el tipo PT_BEZIERTO del punto final de una curva Bézier, mediante el operador bit a bit OR.

La posición actual se establece en el punto final de la línea de cierre.

[in] cpt

Número total de puntos de la matriz de lppt, igual que el número de bytes de la matriz de lpbTypes.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es distinto de cero.

Si se produce un error en la función, el valor devuelto es cero.

Observaciones

La función PolyDraw se puede usar en lugar de llamadas consecutivas a moveToEx, LineToy funciones de PolyBezierTo para dibujar ilustraciones desenlajadas. Las líneas y curvas se dibujan con el lápiz actual y las figuras no se rellenan. Si hay una ruta de acceso activa iniciada llamando a BeginPath, polyDraw agrega a la ruta de acceso.

Los puntos contenidos en la matriz de lppt y en la matriz de lpbTypes indican si cada punto forma parte de un MoveTo, LineToo operación de PolyBezierTo. También es posible cerrar cifras.

Esta función actualiza la posición actual.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de wingdi.h (incluya Windows.h)
biblioteca de Gdi32.lib
DLL de Gdi32.dll

Consulte también

beginPath

EndPath de

funciones de línea y curva

LineTo

líneas y curvas

MoveToEx

POINT de

PolyBezierTo

polyline