Краткая справка по языку программирования Turbo Pascal



         

Глава 1. Введение - часть 2


(или \TP\BGI).

2. Модуль Graph. Инициализация графического режима

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

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

USES Graph;

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

Прежде чем работать с графикой необходимо установить определенный графический видеорежим. Выбор видеорежима зависит от имеющегося графического адаптера. Большинство современных компьютеров (IBM-совместимых) имеют в своем составе видеоадаптер стандарта VGA (Video Graphic Array) или SuperVGA. Для работы с таким адаптером используется графический драйвер EGAVGA.BGI. При этом имеется возможность работы в трех различных видеорежимах:

Режим

Разрешение

VGALo = 0

640х200

VGAMed = 1

640х350

VGAHi = 2

640х480

Разрешение определяется максимальным числом пикселов в строке и максимальным количеством строк пикселов.

Во всех трех видеорежимах возможно одновременное отображение до 16 различных цветов.

Для переключения видеоадаптера в графический режим и установки определенного видеорежима необходимо вызвать специальную процедуры инициализации графики – InitGraph:

InitGraph( var GraphDriver, GraphMode : Integer; DriverPath : String );

Процедура InitGraph имеет 3 параметра. Целочисленные переменные GraphDriver и GraphMode определяют соответственно тип графического видеоадаптера и видеорежим. Третий параметр DriverPath указывает путь в каталог, содержащий файлы с графическими драйверами.

В модуле Graph для задания типа видеоадаптера определен ряд констант:

Detect = 0 – автоопределение;

CGA = 1 – адаптер CGA;

EGA = 3 – адаптер EGA;

VGA = 9 – адаптер VGA;

и др.

Если для параметра GraphDriver используется значение Detect, а значение параметра GraphMode явно не указано, то тип графического адаптера будет определен автоматически и после инициализации соответствующего драйвера будет установлен режим с максимальным разрешением.

Подытожив сказанное выше, запишем пример инициализации графического режима:

USES

Graph;

VAR

GrDr, GrMd : integer;

BEGIN

  GrDr := detect;

  InitGraph( GrDr, GrMd, ‘c:\bp\bgi’ );

  { теперь можно вызывать графические процедуры }

  . . .

  . . .

  . . .

  CloseGraph;

END.

Для завершения работы в графическом режиме необходимо всегда производить вызов процедуры CloseGraph. Она очищает экран, переводит адаптер в текстовый режим и, если возможно, выгружает из памяти графический BGI-драйвер.




Содержание  Назад  Вперед