CreatePolyPolygonRgn
CreatePolyPolygonRgn
Функция CreatePolyPolygonRgn создает область, состоящую из нескольких прямоугольников. Прямоугольники могут перекрывать друг друга.
HRGN CreatePolyPolygonRgn (
CONST POINT * lppt , // указатель на массив точек
CONST INT * lpPolyCounts , // указатель на массив,
// содержащий количества вершин
int nCount , // количество целых в массиве количества вершин
int fnPolyFillMode // режим заполнения многоугольника
);
Параметры
lppt - указатель на массив структур типа POINT , которые определяют вершины многоугольников. Многоугольники задаются последовательно. Каждый многоугольник полагается замкнутым, и каждая вершина может быть задана лишь один раз.
lpPolyCounts - указывает на массив целых, каждое из которых задает количество точек в одном из многоугольников в массиве, на который указывает значение параметра lppt .
nCount - определяет общее количество целых значений в массиве, на который указывает значение параметра lpPolyCounts .
fnPolyFillMode - определяет режим заполнения, используемый для определения того, какие пиксели входят в область. Может принимать одно из следующих значений:
Значение
Пояснение
ALTERNATE
Попеременный режим. Закрашиваются только те фрагменты внутренней области многоугольника, которые получаются путем соединения линий с нечетными номерами (1, 3, 5 и т. д.). Другие фрагменты внутренней области не закрашиваются.
WINDING
Сквозной. Windows закрашивает все внутренние области.
Для дополнительной информации об этих режимах смотрите описание функции SetPolyFillMode .
Возвращаемые значения
В случае успеха возвращается дескриптор области.
В случае неудачи возвращается NULL .
См. также
CreatePolygonRgn, DeleteObject, POINT, SelectObject, SetPolyFillMode .