Большинство языков программирования имеют свои стандартные графические библиотеки. Так, у Basic графические команды являются встроенными; система программирования Turbo Pascal содержит графическую библиотеку (модуль Graph.tpu), имеющую в своем составе процедуры и функции обработки простейших графических примитивов.
В модуле GRAPH содержится 79 графических процедур, функций, десятки стандартных констант и типов данных. В состав модуля входит ряд программ драйверов для наиболее распространенных видеоадаптеров: CGA, MCGA, EGA, VGA, HERCULES, AT&T, 3270 PC. Эти драйверы хранятся в файлах с расширением BGI [4].
Для работы графики её надо инициализировать, а для этого необходимо определить возможный графический режим. Это можно сделать с помощью следующей процедуры.
Uses Graph
…
Procedure InitGraph;
Var GR,GM: Integer;
Begin
GR:=detect;
InitGraph(GR,GM,'c:\\BP\TPU); {вызов процедуры GRAPH}
End;
…
BEGIN
InitGraph;
… Графические операторы …
CloseGraph;
END.
INITGRAPH (драйвер, режим, 'путь' ) - подключает графический режим. Драйвер - это переменная целого типа, определяющая тип графического дисплея. Режим - это переменная целого типа, определяющая режим работы графического адаптера. Путь - указывает путь программам с TPU.
DETECT - режим автоматического определения типа.
CLOSEGRAPH - прекращает работу графического адаптера и восстанавливает текстовый режим работы экрана.
Таким образом все графические операторы работают только при инициализированном графическом режиме, в противном случае будет выводиться ошибка.
Для вывода графических примитивов на экран следует использовать следующие процедуры модуля Graph.
Вывод точки:
PUTPIXEL(x, y, цвет) - выводит точку с координатами (x, y);
Установка цвета:
SETCOLOR (цвет) - устанавливает текущий цвет для выводимых линий и символов;
SETBKCOLOR (цвет) - устанавливает цвет фона,
где цвет- это число от 0 до 15 (Табл. 1).
Цвет: | |
0 | черный |
1 | синий |
2 | зеленый |
3 | голубой |
4 | красный |
5 | лиловый |
6 | коричневый |
7 | светло-серый |
8 | темно-серый |
9 | светло-синий |
10 | светло-зеленый |
11 | светло-голубой |
12 | светло-красный |
13 | светло-лиловый |
14 | желтый |
15 | белый |
Управление курсором вывода:
MOVETO(x,y) - переводит курсор в позицию x,y, точка при этом не высвечивается.
Рисование графических примитивов, с цветом установленных операторами SETCOLOR и SETBKCOLOR:
|
LINETO(x, y) - рисует линию от текущей позиции курсора до x, y;
LINEREL(Dx, Dy) - рисует линию от текущей позиции на относительное расстояние Dx, Dy;
CIRCLE(x, y, r) - выводит окружность, с центром x, y, радиуса r;
ARC(x, y, начальный угол, конечный угол, r) - выводит дугу (углы измеряются в градусах против часовой стрелки);
RECTANGLE(x1,y1,x2,y2) - прямоугольник, где x1, y1 - координаты левого верхнего угла, x2, y2 - правого нижнего угла;
BAR(x1, y1, x2, y2) - закрашенный прямоугольник;
BAR3D(x1, y1, x2, y2, глубина, false или true) - параллелепипед;
где x1, y1 - координаты левого верхнего угла; x2, y2 - координаты правого нижнего угла, true - верхняя грань есть, false - верхняя грань отсутствует.
FILLELLIPSE(x, y, Rx, Ry) - закрашенный эллипс;
SECTOR(x, y, нач.угол, кон.угол, Rx, Ry) - сектор закрашенный;
SETFILLESTYLE(штриховка (Табл. 2), цвет) - каким цветом или какими штрихами будет закрашена замкнутая область;
Штриховка: | |||
0 | фоном | ||
1 | сплошная | ||
2 | _ _ _ | ||
3 | //// | ||
4 | толстыми/// | ||
5 | \\\\ | ||
6 | толстыми \\\ | ||
7 | ++++ | ||
8 | x x x | ||
9 | квадратами | ||
10 | редкими точками | ||
11 | частыми точками | ||
12 |
|
FLOODFILL(x, y, цвет,цвет границы) - штрихует произвольную замкнутую область;
Вывод текста.
Специально для графического режима разработаны процедуры, обеспечивающие вывод сообщений различными шрифтами в горизонтальном и вертикальном расположении с изменением размеров и т.д.
OUTTEXT(ТЕКСТ) - вывод текста, начиная с текущей позиции
OUTTEXTXY(x, y, текст) - вывод текста, начиная с точки с координатами (x,y)
SETTEXTSTYLE(шрифт, направление, размер) - процедура устанавливает стиль текстового вывода на графический экран, где
шрифт: 0 - стандартный шрифт, 1 - штриховой шрифт, 2 - уменьшенный, 3 - прямой, 4 - готический;
направление: 0 - слева - направо, 1 - снизу - вверх;
размер: 1-32 для стандартного шрифта, 1-10 для штриховых
SETUSERCHARSIZ(x1, x2, y1, y2) - позволяет изменить ширину и высоту символа для штрихового шрифта
Язык программирования Pascal поддерживает работу и с растровой графикой (спрайты), однако это выходит за рамки изучения данной темы.
Глава 3. Анализ учебно-методической литературы.
Из рассмотренных общеобразовательных учебников по информатике лишь немногие содержали тему «Графика» в разделе программирование.
Для рассмотрения возьмем следующие учебники, в которых данная тема рассмотрена:
1). Кузнецов А.А., Апатова Н.В. Основы информатики. 8-9 кл.: Учебн. для общеобраз. учебных заведений. – М.: «Дрофа», 1999. – 176 с. [10]
2). Ляхович В.Ф. Информатика: Пособие для учащихся 10-11 кл. общеобразовательных учереждений – М.: «Просвещение», 1998. – 352 с. [11]
3). Каймин В.А., Щеголев А.Г. Основы информатики и вычислительной техники: Проб. учебное пособие для 10-11 кл. средн. шк. – М.: «Просвещение», 1989. – 272 с. [8]
4). Угринович Н.Д. Информатика и информационные технологии. Учебник для 10-11 классов/ Н.Д. Угринович. – М.; «БИНОМ». Лаборатория знаний, 2003. – 512 с. [18], [19]
При проведении анализа для каждого учебника рассмотрим теоретический материал и систему заданий, а также предлагаемые в них методики.
Дата: 2019-12-22, просмотров: 242.