Шаг 62.
Microsoft Visual C++ 2010. Начала.
Программирование. Графика. Графические примитивы (общие сведения)

    На этом шаге мы перечислим основные графические примитивы.

    Любая картинка, чертеж, схема представляет собой совокупность графических примитивов: точек, линий, окружностей, дуг, текста и др.

    Вычерчивание графических примитивов на графической поверхности (Graphics) выполняют соответствующие методы (таблица 1).

Таблица 1. Некоторые методы вычерчивания графических примитивов
Метод Действие
DrawLine(Pen, x1, y1, x2, y2),
DrawLine(Pen, p1, p2)
Рисует линию. Параметр Pen определяет цвет, толщину и стиль линии; параметры x1, y1, x2, y2 или p1 и p2 - координаты точек начала и конца линии
DrawRectangle(Pen, x, y, w, h) Рисует контур прямоугольника. Параметр Pen определяет цвет, толщину и стиль границы прямоугольника: параметры x, y - координаты левого верхнего угла; параметры w и h задают размер прямоугольника
FillRectangle(Brush, x, y, w, h) Рисует закрашенный прямоугольник. Параметр Brush определяет цвет и стиль закраски прямоугольника; параметры x, y - координаты левого верхнего угла; параметры w и h задают размер прямоугольника
DrawEllipse(Pen, x, y, w, h) Рисует эллипс (контур). Параметр Pen определяет цвет, толщину и стиль линии эллипса; параметры x, y, w, h - координаты левого верхнего угла и размер прямоугольника, внутри которого вычерчивается эллипс
FillEllipse(Brush, x, y, w, h) Рисует закрашенный эллипс. Параметр Brush определяет цвет и стиль закраски внутренней области эллипса; параметры x, y, w, h - координаты левого верхнего угла и размер прямоугольника, внутри которого вычерчивается эллипс
DrawPolygon(Pen, P) Рисует контур многоугольника. Параметр Pen определяет цвет, толщину и стиль линии границы многоугольника; параметр P (массив типа Point) - координаты углов многоугольника
FillPolygon(Brush, P) Рисует закрашенный многоугольник. Параметр Brush определяет цвет и стиль закраски внутренней области многоугольника; параметр P (массив типа Point) - координаты углов многоугольника
DrawString(str, Font, Brush, x, y) Выводит на графическую поверхность строку текста. Параметр Font определяет шрифт; Brush - цвет символов; x и y - точку, от которой будет выведен текст
DrawImage(Image, x, y) Выводит на графическую поверхность иллюстрацию. Параметр Image определяет иллюстрацию; x и y - координату левого верхнего угла области вывода иллюстрации

    Один и тот же элемент можно нарисовать при помощи разных, но имеющих одинаковые имена методов (вспомните: возможность объявления функций, имеющих одинаковые имена, но разные параметры, называется перегрузкой).

    Например, прямоугольник можно нарисовать методом DrawRectangle, которому в качестве параметров передаются координаты левого верхнего угла и размеры прямоугольника:

  e->Graphics->DrawRectangle(Pens::Black, x, x, w, h)

    Эту же задачу может решить метод DrawRectangle, которому в качестве параметра передается структура типа Rectangle поля которой определяют прямоугольник (положение и размер):

  Rectangle aRect = Rectangle(20,100,50,50);
  e->Graphics->DrawRectangle(Pens::Blue, aRect);

    Существование нескольких методов, выполняющих одну и ту же задачу, позволяет программисту выбрать метод, наиболее подходящий для решения конкретной задачи.

    В качестве параметров методов вычерчивания графических примитивов часто используется структура Point. Ее поля X и Y определяют положение (координаты) точки графической поверхности. Например:

  Point p1 = Point(10,10);
  Point p2 = Point(100,10);
  // рисуем линию из p1 в p2
  e->Graphics->DrawLine(Pens::Green, p1, p2);

    На следующем шаге мы рассмотрим линию.




Предыдущий шаг Содержание Следующий шаг