CRgn::CreatePolygonRgn

BOOL CreatePolygonRgn ( LPPOINT lpPoints, int nConteggio, int nMode );

Valore restituito

Diverso da zero se l'operazione riuscita; in caso contrario 0.

Parametri

lpPoints

Punti a una matrice di strutture POINT o una matrice di oggetti CPoint . Ogni struttura specifica la coordinata x e la coordinata y di un vertice del poligono. La struttura POINT ha la seguente forma:

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

nConteggio

Specifica il numero di strutture POINT o CPoint oggetti nella matrice a cui puntata lpPoints.

nMode

Specifica la modalità di riempimento per la regione. Questo parametro può essere alternativo o TORTUOSA.

Osservazioni

Crea un'area poligonale. Il sistema chiude il poligono automaticamente, se necessario, tracciando una linea dal vertice ultimo alla prima. La regione risultante è memorizzata nell'oggetto CRgn.

Le dimensioni di una regione sono limitata a unità logiche 32.767 da 32.767 o 64 KB di memoria, se più piccoli.

Quando la modalità di riempimento poligono è alternativo, il sistema riempie la zona fra i lati del poligono dispari e pari su ogni linea di scansione. Cioè, il sistema di riempia l'area tra il primo e il secondo lato, tra il terzo e il quarto lato e così via.

Quando la modalità di riempimento poligono è TORTUOSA, il sistema utilizza la direzione in cui è stata disegnata una figura per determinare se riempire un'area. Ogni segmento di linea in un poligono è disegnato in senso orario o in senso antiorario. Ogni volta che una linea immaginaria tracciata da una zona chiusa di fuori di una figura passa attraverso un segmento di linea in senso orario, un conteggio viene incrementato. Quando la linea passa attraverso un segmento di linea in senso antiorario, il conteggio viene decrementato. La zona è piena di se il conteggio è diverso da zero, quando la linea raggiunge l'esterno della figura.

Quando un'applicazione ha terminato di utilizzare una regione creata con la funzione CreatePolygonRgn , dovrebbe selezionare la regione di contesto di periferica e utilizzare la funzione DeleteObject per rimuoverlo.

Panoramica CRgn |nbsp; Membri della classe | Gerarchia Chart

Vedere anchenbsp;CRgn::CreatePolyPolygonRgn, :: CreatePolygonRgn

Index