Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник.docx
Скачиваний:
36
Добавлен:
21.12.2018
Размер:
2.15 Mб
Скачать

4.Графика и псевдографика Модуль Crt

Модуль Crt позволяет выводить цветные символы на цветном экране. Хотя по-прежнему отображение будет происходить в текстовом режиме. Текстовый режим означает, что на экране могут выводиться только определенные символы в определенных местах (знакоместах) . Можно представить экран, разделенным вертикальными и горизонтальными линиями на ячейки. В эти ячейки можно «вписывать» различные символы. У каждой ячейки есть адрес.

Модуль Crt содержит ряд процедур, позволяющих задавать цвет символов и экрана, очищать экран, менять позицию курсора и др.

Стандартный экран в Паскале чаще формируется из 25 сток и 80 столбцов. Строки нумеруются сверху вниз, а столбцы слева на право. Нумерация начинается с единицы (что может показаться непривычным).

Количество доступных цветов (для экрана и символов) всего 16. Они кодируются числами от 0 до 15. Также вместо чисел можно прописывать названия цветов.

Для того чтобы в программе можно было использовать содержимое модуля Crt, его надо импортировать (подключить) в программу. Делается это в секции, которая начинается со слова uses.

Чтобы очистить экран от всех надписей, требуется выполнить процедуру clrscr. Если перед этим был задан цвет экрана (с помощью textbackground), то экран будет залит соответствующим цветом.

Цвет текста определяется процедурой textcolor, позиция курсора – gotoxy.

Для вывода символов на экран используются стандартные процедуры write и writeln.

Также существует процедура временной задержки delay (аргумент задается в микросекундах), если требуется выводить символы не сразу, а постепенно.

uses

crt;

begin

textbackground (7);

clrscr;

textcolor (12);

gotoxy (10,5);

write ('Hi, world!');

delay (1500);

gotoxy (40,22);

textcolor (14);

write ('Yes');

readln

end.

Модуль Graph

Все что позволяет делать модуль Crt на самом деле является псевдографикой, т.к. изображение формируется из символов (букв, цифр, кавычек и др.) в текстовом режиме.

Когда экран монитора работает в графическом режиме, то изображение на нем формируется из точек (пикселей), а не символов. Точка намного меньше символа, и, следовательно, на экране точек разместится куда больше, чем знакомест в текстовом режиме. Поэтому, несмотря на то, что система координат начинается также в левом верхнем углу, максимальные значения по двум осям намного больше, чем при работе с модулем Crt, и зависит от разрешения экрана. Отсчет в данном случа е начинается с нуля.

Например, если размер экрана – 1024x768, то последняя точка имеет соответственно координаты 1023х767.

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

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

uses

graph;

var

g, h, i, x, y, c: integer;

begin

g := detect;

initgraph(g,h,'');

setcolor(10);

line(10,10, 300,300);

x := 600;

y := 500;

randomize;

for i := 1 to 50 do begin

c := random (15);

putpixel (x, y, c);

x := x + 10;

y := y - 5

end;

readln

end.

Использование detect позволяет определить тип графического драйвера автоматически.

Запуск графического режима выполняется с помощью процедуры initgraph. После этого на экране должно появиться окно, «работающее» в графическом режиме.

Процедура setcolor устанавливает цвет, которым в дальнейшем будут выводиться различные примитивы.

Процедура line выводит линию. Первые два числа – это одна координата, а третье и четвертое число – другая.

Процедура putpixel рисует точки. Помимо координаты она принимает третий аргумент – цвет точки.