Рисование замкнутых фигур
Рассмотрим функции для рисования замкнутых фигур:
Rectangle – прямоугольник; Ellipse – эллипс; RoundRect – прямоугольник со скругленными углами; Chord – дуга кривой эллипса, концы которой соединены хордой; Pie – кусок, вырезанный из эллипса; Polygon – многоугольник; PolyPolygon – множество многоугольников.
Контур фигуры рисуется текущим пером, а фигура закрашивается текущей кистью. По умолчанию это стандартная кисть WHITE_BRUSH.
Простейшей является функция рисования прямоугольника:
Rectangle (hdc, x1, y1, x2, y2);
(x1, y1) – координаты левого верхнего угла, (x2, y2) – правого нижнего угла.
Для рисования эллипса используется функция, имеющая те же параметры:
Ellipse (hdc, x1, y1, x2, y2);
Фигура, отображаемая функцией Ellipse (вместе с ограничивающим прямоугольником).
Функция для рисования прямоугольника со скругленными углами:
RoundRect (hdc, x1, y1, x2, y2, xEllipse, yEllipse);
имеет два дополнительных параметра: для рисования скругленных углов используется маленький эллипс, шириной xEllipse, высотой yEllipse. Фигура, отображаемая этой функцией, приведена на рисунке. Скругленные углы были нарисованы с использованием размеров эллипса, вычисленных по формулам
xEllipse = (x2–x1)/4; yEllipse = (y2–y1)/4;
Это простое приближение, но результаты скорее всего будут выглядеть не совсем правильно, потому что округлость углов более заметна при больших размерах прямоугольника.
Функции Chord (сегмент эллипса) и Pie (сектор эллипса) имеют одинаковые параметры:
Chord (hdc, x1, y1, x2, y2, xStart, yStart, xEnd, yEnd);
Pie (hdc, x1, y1, x2, y2, xStart, yStart, xEnd, yEnd);
При рисовании используется воображаемая линия для соединения точки (xStart, yStart – начало дуги) с центром эллипса. В точке, где эта линия пересекается с ограничивающим прямоугольником, начинается рисование дуги эллипса в направлении против часовой стрелки; аналогично используется воображаемая линия для соединения точки (xEnd, yEnd – конец дуги) с центром эллипса. В точке, где эта линия пересекается с ограничивающим прямоугольником, завершается рисование дуги.
В функции Chord соединяются конечные точки дуги, а в функции Pie соединяются начальная и конечная точки дуги с центром эллипса.
Фигуры, отображаемые функциями Chord и Pie, приведены на рис. П 6.3.
Рис. П 6.3. Фигуры, нарисованные с использованием:
а – функции Chord; б – функции Pie
Дата добавления: 2017-10-04; просмотров: 1238;