Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Графика С++.doc
Скачиваний:
1
Добавлен:
28.08.2019
Размер:
902.66 Кб
Скачать

Графика С++

Теоретические сведения

В Windows насчитывается несколько десятков графических функций. Их названия частично совпадают с DOS-именами аналогичных средств. Особое внимание надо обратить на заглавные первые буквы в названиях этих функций, что принципиально при наборе программ в C++. В среде DOS названия графических функций пишутся прописными латинскими буквами, что принципиально для языка C++, в отличие от языка Pascal.

Графика в среде C++ Builder и функции Canvas-графики

Холст

Графика холста (Canvas) C++ Builder, предназначенная для рисования графических примитивов на поверхности «холста» формы. Программа может вывести графику на поверхность формы (или компонента Image), которой соответствует свойство Canvas (Canvas – холст для рисования). Для того чтобы на поверхности формы или компонента Image появилась линия, окружность, прямоугольник или другой графический элемент (примитив), необходимо к свойству Canvas применить соответствующий метод (табл. 1). Например, команда

Forml->Canvas->Rectangle(10,10,50,50);

рисует на поверхности формы прямоугольник.

Таблица 1. Методы вычерчивания графических примитивов

Метод

Действие

LineTo(x,y)

Рисует линию из текущей точки в точку с указанными координатами

Rectangle (xl,yl,x2,y2)

Рисует прямоугольник, xl, yl и х2, у2 – координаты левого верхнего и правого нижнего углов прямоугольника

FillRect (xl,yl,x2, у2)

Рисует закрашенный прямоугольник, xl, yl, х2, у2 – определяют координаты диагональных углов

FrameRect (xl, yl,x2, у2)

Рисует контур прямоугольника, xl, yl, х2, у2 – определяют координаты диагональных углов

RoundRect (xl, yl,x2,y2,x3,y3)

Рисует прямоугольник со скругленными углами

Ellipse (xl,yl,x2,y2)

Рисует эллипс или окружность (круг), xl, yl, х2, у2 – координаты прямоугольника, внутри которого вычерчивается эллипс или, если прямоугольник является квадратом, окружность

Polyline (points,n)

Рисует ломаную линию, points – массив типа TPoint.

Каждый элемент массива points представляет собой запись, поля х и у которой содержат координаты точки перегиба ломаной; n – количество звеньев ломаной. Метод Polyline вычерчивает ломаную линию, последовательно соединяя прямыми отрезками точки, координаты которых находятся в массиве: первую со второй, вторую с третьей, третью с четвертой и т. д.

Методы вывода графических примитивов рассматривают свойство Canvas как некоторый абстрактный холст, на котором они могут рисовать (Canvas переводится как "поверхность", "холст для рисования"). Холст состоит из отдельных точек – пикселов. Положение пиксела на поверхности холста характеризуется горизонтальной (X) и вертикальной (Y) координатами. Координаты возрастают сверху вниз и слева направо (рис. 1). Левый верхний пиксел поверхности формы (клиентской области) имеет координаты (0,0), правый нижний – (ClientWidth, ClientHeight). Доступ к отдельному пикселу осуществляется через свойство Pixels, представляющее собой двумерный массив, элементы которого содержат информацию о цвете точек холста.

Рисунок 1. Координаты точек поверхности формы (холста)