CRgn::CreatePolyPolygonRgn

BOOL CreatePolyPolygonRgn ( LPPOINT lpPoints, LPINT lpPolyCounts, int nCount, int nPolyFillMode );

Valor devuelto

Distinto de cero si la operación se realizó correctamente; caso contrario 0.

Parámetros

lpPoints

Puntos en una matriz de estructuras POINT o una matriz de objetos CPoint que define los vértices de los polígonos. Cada polígono se debe cerrar explícitamente porque el sistema no las cierra automáticamente. Los polígonos se especifican de forma consecutiva. La estructura de punto tiene el siguiente formulario:

typedef struct tagPOI&NT {}
 nbsp; int x;
   int y;
} PUNTO

lpPolyCounts

Puntos en una matriz de enteros. El primer número entero especifica el número de vértices en el primer polígono en la matriz de lpPoints , el segundo entero especifica el número de vértices en el segundo polígono etc.

nCount

Especifica el número total de enteros en la matriz de lpPolyCounts.

nPolyFillMode

Especifica el modo de relleno de polígono. Este valor puede ser alternativa o DEVANADO.

Observaciones

Crea una región compuesta por una serie de polígonos cerrados. La región resultante se almacena en el objeto de CRgn.

Los polígonos pueden ser separados, o pueden superponerse.

El tamaño de una región se limita a unidades lógicas de 32.767 por 32.767 o 64 K de memoria, lo que sea menor.

Cuando el modo de relleno de polígono es alternativo, el sistema rellena el área entre los lados del polígono impares y pares en cada línea de análisis. Es decir, el sistema rellena el área entre la primera y la segunda parte, entre la tercera y cuarta parte etc.

Cuando el modo de relleno de polígono es SINUOSO, el sistema utiliza la dirección en que se dibujó una figura para determinar si debe rellenar un área. Cada segmento de línea en un polígono se dibuja en un horario o una dirección en sentido antihorario. Siempre que una línea imaginaria extraída de un área cerrada al exterior de una figura pasa a través de un segmento de línea de las agujas del reloj, se incrementa un recuento. Cuando la línea pasa por un segmento de línea a la izquierda, el recuento es disminuye. El área se rellena si el recuento es distinto de cero cuando la línea alcanza el exterior de la figura.

Cuando una aplicación ha terminado de utilizar una región creada con la función de CreatePolyPolygonRgn , debe seleccionar la región fuera del contexto de dispositivo y utilice la función de miembro de CGDIObject::DeleteObject para quitarla.

Visión General de CRgn |nbsp; Miembros de clase | Diagrama de jerarquía

Vea tambiénnbsp;CRgn::CreatePolygonRgn, CDC::SetPolyFillMode, :: CreatePolyPolygonRgn

Index