CRgn::CreatePolyPolygonRgn

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

Wartość zwracany

Niezerowa, jeśli operacja powiodła się; inny sposób 0.

Parametry

lpPoints

Punkty do tablicy punkt struktur lub tablicą obiektów CPoint , która definiuje wierzchołki wielokątów. Każdego wielokąta musi być jawnie zamknięte, ponieważ system nie zamyka je automatycznie. Wielokąty są określane sukcesywnie. Struktura punkt ma następującą postać:

element TypeDef struct tagPOI&NT {}
 nbsp; int x;
   int y;
} PUNKT

lpPolyCounts

Punkty do tablicy liczb całkowitych. Pierwsza liczba całkowita określa liczbę wierzchołków w pierwszym wielokąt w tablicy lpPoints , drugi całkowitą określa liczbę wierzchołków w drugim wielokąta i tak dalej.

nCount

Określa całkowitą liczbę liczb całkowitych w tablicy lpPolyCounts.

nPolyFillMode

Określa tryb Wielokąt napełniania. Ta wartość może być alternatywny lub ZAWIJANIA.

Uwagi

Tworzy regionu składającego się z szeregu zamkniętych wielokątów. Wynikowy regionu jest przechowywany w obiekcie CRgn.

Wielokąty może zostać odłączony lub mogą nakładać.

Rozmiar regionu jest ograniczona do 32 767 przez 32 767 logiczne jednostki lub 64 K pamięci, którakolwiek z dat jest mniejszy.

Gdy tryb Wielokąt wypełniania jest ALTERNATYWNA, system wypełnia obszar między stron nieparzystych i parzystych wielokąt w każdym wierszu skanowania. Oznacza to, że system wypełnia obszar między pierwszym i drugim po stronie, między stronie trzeciej i czwartej i tak dalej.

Gdy tryb Wielokąt wypełniania jest ZAWIJANIA, system używa kierunek, w którym rysunek został narysowany, aby określić, czy należy wypełnić obszar. Każdy segment linii wielokąta jest rysowany w zegara lub wskazówek zegara. Ilekroć umowną linią wyznaczoną z zamkniętych przestrzeni na zewnątrz rysunek przechodzi zegara odcinka, licznik jest zwiększany o jeden. Gdy linia przechodzi przez segment linii zegara, wynik zliczenia jest zmniejszana. Obszar jest wypełniany, jeśli liczba jest niezerowa, gdy wiersz osiągnie poza rysunek.

Gdy aplikacja zakończy korzystanie z regionu utworzonych za pomocą funkcji CreatePolyPolygonRgn , należy wybrać region tego kontekstu urządzenia i funkcji członek CGDIObject::DeleteObject go usunąć.

Omówienie CRgn |nbsp; Klasa członków | Wykres hierarchii

Zobacz teżnbsp;CRgn::CreatePolygonRgn, CDC::SetPolyFillMode, :: CreatePolyPolygonRgn

Index