Урок 1.
Тема.
Описание графических операций языком программирования.
Цели. Познакомить
с библиотекой подпрограмм Graph; процедурами и функциями для графических конструкцій; таблицей
цветов;
Учить строить аналогии, выделять
главное, ставить и решать проблемы.
Воспитывать
аккуратность, внимательность, вежливость и дисциплинированность.
Ход урока.
I.
Орг. Момент. Сообщение цели урока.
II.
Изложение новой темы (Работа с презентацией).
Средства языка
Паскаль позволяют строить изображение на экране дисплея. Для этого используется специальная библиотека подпрограмм Graph. В нее входять графические процедуры и функции для построения различных по форме фигур и линий, а так же средства организации графического режима.
1.
Графический режим.
Графический
экран дисплея состоит из точек, которые можно окрашивать цветом или
гасить, в результате
чего на экране создается какое-то изображення. Точки называются пикселями. Количество точек на экране может быть разным,
это зависит от разрешения экрана. Рассмотрим экран, который имеет 640 точек в горизонтальном (x) направлении и 480
в вертикальном
(y). Начало отсчета точек находится в левом верхнем углу экрана.
Каждая точка характеризуется двумя
координатами (x,y). Примеры
разположения
на экране точек показаны на рис. 3.
Рис. 3. Координаты
точек на графическом екране
640х480.
Программы, что выполняют компьютерную графику , - линейные и состоят из обращений к стандартным графическим процедурам и функциям, собранных в модуле Graph.tpu.
Сам модуль может быть в библиотеке Turbo.tpl либо в любом каталоге на диске. В последнем случае модуль нужно присоединить командой uses в начале программы.
2.
Графический режим сначала нужно задать. Это делают
так:
var gd,gm:integer; {Для характеристик
дисплея}
begin
gd:=detect; {detect - стандартна}
initgraph (gd,gm,''); {Задание графического режима}
3.
Процедуры и функции для графических конструкций.
Рассмотрим процедуры модуля Graph, для графических конструкций.
initgraph (gd,gm,''); - <путь
до драйвера>) — задает графический режим. Путь к драйверу обозначают апострофами, если он
находится не в том ж каталоге,
что и файл turbo.exe;
gd:=detect; (<драйвер>, <режим>) — возвращает
значение характеристик дисплея;
setcolor (<цвет>) — задает цвет
будущего изображения;
putpixel (x,
y, <цвет>) — закрашивает точку (x,y) заданным
цветом;
line (x1, y1, x2, y2) —
рисует линию между 2 точками;
rectangle (x1, y1, x2, y2) —
рисует прямоугольник с заданными координатами от диагонали);
bar (x1, y1, x2, y2) —
рисует закрашенный прямоугольник;
circle (x,
y, R) — рисует круг с радиусом R и центром у (x,y);
arc (x, y,
<начальный угол>, <конечный угол>, <радиус>) — рисует дугу;
pieslice (x,
y, <начальный угол>, <конечный угол>,
<радиус>) — рисует закрашенный сектор;
ellipse (x,
y, <начальный угол>, <конечный угол>,
<горизонт. радиус>, <вертик.радиус>)
— рисует эллипс или дугу эллипса;
setfillstyle (<заполнение >, <цвет>) — задает способ
заполнения замкнутой области в зависимости
от значения параметра заполнения: 0 — заполнить цветом фона, 1 — однородное заполнение, 2 — заполнение толстыми
горизонтальными линиями, 3 — заполнение наклонными линиями, ..., 10 — заполнение точками.
floodfill (x,
y, <цвет границ>) — заполнение замкнутой области, что содержит точку(x,y);
closegraph — закриває
графічний режим;
outtext (<текст>) — выводить заданный текст с поточной позиции;
outtextxy (x, y,
<текст>) — выводить текст в заданном
месте;
4. Таблица цветов:
Цвет |
Номер цвета |
Чёрный |
0 |
Синий |
1 |
Зелёный |
2 |
Бирюзовый |
3 |
Красный |
4 |
Сиреневый |
5 |
Коричневый |
6 |
Светло-серый |
7 |
Серый |
8 |
Голубой |
9 |
Светло-зелёный |
10 |
Светло-бирюзовый |
11 |
Светло-бирюзовый |
12 |
Светло-сиреневый |
13 |
Жёлтый |
14 |
Белый,
яркий |
15 |
III.
Практическая часть.
Задача. Написать программу, которая создает на экране изображение:
Начертить координатный угол на странице тетради, разлинованной в клетку.
Ед. Измерения
– 2 клетки. По горизонтали
1 клетка= 20 пикселам; по
вертикали=22 рядам.
,
Создание данного изображения в тетрадях, разлинованных в клетку.
Коллективная разработка программы:
program one;
uses crt,GRAPH;
var gd,gm:integer;
begin
gd:=detect;
initgraph (gd,gm,'');
setcolor(4);
arc(280,180,0,180,60);
arc(400,180,0,180,60);
line(220,180,340,320);
line(460,180,340,320);
setfillstyle(1,5);
floodfill(280,180,4);
setcolor(12);
rectangle(260,460,400,440);
circle(340,240,10);
ellipse(340,270,0,360,5,10);
ellipse(340,300,0,360,10,15);
ellipse(340,360,0,360,15,20);
ellipse(340,420,0,360,25,20);
setfillstyle(1,4);
floodfill(340,270,12);
floodfill(340,300,12);
floodfill(340,360,12);
floodfill(340,420,12);
floodfill(340,240,12);
setfillstyle(1,3);
floodfill(340,450,12);
repeat until keypressed;
closegraph;
end.
IV. Дом. задание. Написать программу, которая создает на экране изображение бабочки.
V. Итог урока. Выставление оценок.