На этом шаге мы перечислим основные графические примитивы.
Любая картинка, чертеж, схема представляет собой совокупность графических примитивов: точек, линий, окружностей, дуг, текста и др.
Вычерчивание графических примитивов на графической поверхности (Graphics) выполняют соответствующие методы (таблица 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);
На следующем шаге мы рассмотрим линию.