BOOL Polygon( LPPOINT lpPoints, int nCount );
Возвращаемое значение
Отлично от нуля, если функция успешна, иначе 0.
Параметры
lpPoints
Указатель на массив точек, которые определяет вершину многоугольника. Каждая отметка в массиве - структура POINT или объект CPoint.
nCount
Определяет число вершины в массиве.
Замечания
Выводит многоугольник, состоящий из двух или больше вершин, связанных линяими, используя текущее перо. Система закрывает многоугольник автоматически, в случае необходимости, выводя линию из последней вершины к первой.
Текущий режим заполнения многоугольника может быть получен или установлен, используя GetPolyFillMode и SetPolyFillMode функции.
Пример
void CMyView::OnDraw(CDC* pDC) { // Получить клиентскую область CRect rect; GetClientRect(rect); // Выведите с толстым синим пером CPen penBlue(PS_SOLID, 5, RGB(0, 0, 255)); CPen* pOldPen = pDC->SelectObject(&penBlue); // И твердая красная кисть CBrush brushRed(RGB(255, 0, 0)); CBrush* pOldBrush = pDC->SelectObject(&brushRed); // Найти середину точек верхней части, права, левого, и нижней части // клиентской области. Они будут вершинами нашего многоугольника. CPoint pts[4]; pts[0].x = rect.left + rect.Width()/2; pts[0].y = rect.top; pts[1].x = rect.right; pts[1].y = rect.top + rect.Height()/2; pts[2].x = pts[0].x; pts[2].y = rect.bottom; pts[3].x = rect.left; pts[3].y = pts[1].y; // Вызов Polygon () на том массиве выведет три линии // Между точками, также с дополнительной линией // что бы закрыть форму - из последней отметки к первой отметки // которую мы определили. pDC->Polygon(pts, 4); // Верните старые объекты. pDC->SelectObject(pOldPen); pDC->SelectObject(pOldBrush); }