Пример программы графики в DELPHI

ЛАБОРАТОРНАЯ РАБОТА № 11

Графика в DELPHI

Данная лабораторная работа предназначена для знакомства с основами создания графических изображений. На примере программы построения графика функции, заданной таблично, необходимо изучить такие графические элементы, как перо, кисть, шрифт, линии, прямоугольники и т.д.; познакомиться с компонентом TPaintBox для изображения произвольной графики и классом TCanvas, объединяющим все основные примитивы для рисования графики в Delphi.

Цель работы

Изучение средств Delphi для рисования произвольных изображений на экране.

Задачи работы

Ознакомление с объектами для создания произвольных графических изображений.

Задание 1.

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

1. Создайте в новом проекте форму «График функции Sin(x)»

Пример программы графики в DELPHI - student2.ru Пример программы графики в DELPHI - student2.ru Для графического представления числовых данных служит компонент Chart в группе компонентов Additional.

Компонент содержит большое число специфических свойств, событий и методов.

Мы рассмотрим самый простой метод – построение графика функции Sin(x).

Вначале компонент помещается на форму. После щелчка по нему правой кнопкой мыши вызывается его вспомогательное меню, которое содержит опцию Edit Chart – с помощью этой опции вызывается многолистное окно редактора компонента. Закладка Series этого окна открывает доступ к сериям – объектам класса TCharSeries, которые и будут отображать наборы чисел в графическом виде.

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

Пример программы графики в DELPHI - student2.ru Пример программы графики в DELPHI - student2.ru

После закрытия редактора компонент будет содержать примерный вид графика.

Однако его реальный вид зависит от фактических данных, которые создаются в работающей программе и добавляются к серии с помощью методов AddX, AddY, или AddXY объекта TCharSeries (получить доступ к серии можно с помощью индексированного свойства Series[n] – первая созданная серия имеет индекс 0, вторая 1, третья – 2 и т.д.

Ниже приведен пример обработчика события OnActivate формы для создания графика функции Sin(x).

Пример программы графики в DELPHI - student2.ru procedure TForm1.FormActivate(Sender: TObject);

var

k: integer;

begin

For k:=0 to 20 do

Chart1.Series[0].AddXY(k,sin(k*pi/10),'',clRed);

end;

2.Сохранитепроект в папкеЛабораторная работа 11/Задание 1.

Самостоятельное задание: Построить гистограмму расхода электроэнергии по кварталам согласно таблице

  1 квартал 2 квартал 3 квартал 4 квартал
Расход эл. эн. в кВт. час.

Пример программы графики в DELPHI - student2.ru

Сохранитепроект в папкеЛабораторная работа 11/Самостоятельная.

Задание 2

Пример программы графики в DELPHI

1.Конструирование формы:

Создайте в новом проекте форму «Дорожный знак»

На форме расположены 2 кнопки «Нарисовать» и «Выход»

Для прорисовки произвольных изображения используется класс TCanvas(холст), а также методы, позволяющие рисовать графические примитивы.

В табл. приведено краткое описание свойств и методов объектов для рисования графики.

Основные свойства объектов типа TCanvas
Свойство Тип Комментарий
Brush TBrush Параметры заливки сплошных областей
Pen TPen Параметры отображения линий
Font TFont Параметры отображения текстовых надписей
Pixels[X,Y] TColor Цвет точки с координатами (X,Y)
Основные методы объектов типа TCanvas
Метод Комментарий
Ellipse(Xl,Yl,X2,Y2) Изображает эллипс, вписанный в прямоугольник с заданными координатами
LineTo(X,Y) Рисует линию из текущей позиции в новую точку. Строит линию от текущей точки, в которую перешли с помощью функции MoveTo(X,Y), до точки с заданными координатами
MoveTo(X,Y) Перемещение в точку с заданными координатами. Устанавливает текущую позицию
Polyline:(array of :TPoint) Рисует полилинию по набору точек
Polygon (array of ТPoint) Рисует полигон по набору точек
Rectangle(X1,Y1,X2,Y2} Рисует прямоугольник по координатам двух противоположных углов
TextOut{X,Y,Text) Выводит текст в заданной позиции
RoundRect(X1,Y1, X2,Y2, X3,Y3) Строит прямоугольник с закругленными углами, где X1,Y1 – координаты верхнего левого угла прямоугольника, X2,Y2 – координаты нижнего правого угла прямоугольника, X3,Y3 – радиусы закругления углов.
Arc(X1,Y1, X2,Y2, X3,Y3,X4,Y4) Построение дуги, где X1,Y1 – координаты верхнего левого угла прямоугольника, X2,Y2 – координаты нижнего правого угла прямоугольника, X3,Y3 – точка начала дуги, X4,Y4 – точка конца дуги. Прорисовка дуги происходит против часовой стрелки.
Основные свойства объектов типа TBrush.
Свойство Тип Комментарий
Color TColor Цвет заливки
Style TBrushStyle Стиль заливки (bsSolid - сплошная, bsCiear -нет, bsHorizontal — горизонтальные линии, bsVertical - вертикальные)
Основные свойства объектов типа ТРеn.
Свойство Тип Комментарий
Color TColor Цвет линий
Style TPenStyle Стиль линий (psSolid - сплошная, psDash - штрих, psDot - точки, psDashDot - штрих-пунктир, psDashDotDot - штрих-штрих-пунктир, psClear - нет линии)
Width Integer Ширина сплошной линии
Основные свойства объектов типа TFont.
Свойство Тип Комментарий
Color TColor Цвет шрифта
Name String Имя шрифта
Size Integer Размер шрифта
Style TFontStyles Стили шрифта: жирность, наклон, подчеркивание, зачеркивание
                   

2.Условие:

Составить программу вывода на экран рисунка, используя графические возможности языка программирования.

3.Программа:

Пример программы графики в DELPHI - student2.ru

Пример программы графики в DELPHI - student2.ru

Пример программы графики в DELPHI - student2.ru

4.Результат:

Пример программы графики в DELPHI - student2.ru

Сохранитепроект в папкеЛабораторная работа 11/Задание 2.

Задание 3

Наши рекомендации