Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория по графическому режиму.doc
Скачиваний:
6
Добавлен:
21.02.2016
Размер:
82.94 Кб
Скачать

5

Графический режим

Модуль Graphпредставляет собой библиотеку подпрограмм, обеспечивающих полное управление графическими режимами различных адаптеров дисплеев:CGA,EGA,VGAи других. Библиотека содержит более 50 графических процедур и функций, как базовых (рисование точек, линий, окружностей и т.д.), так и расширяющих возможности базовых (многоугольники, заполнение фигур, вывод текста и др.).

Файл BGI– это графический интерфейс (BorlandGraphicInterface) фирмыBorland. Он обеспечивает взаимодействие программ с графическими устройствами. Перед работой программ в графических режимах дисплея процедураInitGraphопределяет тип адаптера, представленного в ПЭВМ, и загружает в память соответствующийBGI-драйвер, в котором определены режимы работы. ПроцедураCloseGraphвыгружает графический драйвер из памяти и восстанавливает текстовый режим работы видеоадаптера.

Процедура инициализации графического режима InitGraph

Программа, использующая графику, обязательно должна содержать блок вызовов процедур инициализации графического режима и обращение к процедуре его закрытия. Такой блок инициализирует графический режим, проверяет правильность переключения и, если все операции прошли успешно, допускает дальнейшую работу программы. Процедура инициализации объявлена следующим образом:

InitGraph (var GraphDriver : Integer; {тип адаптера}

Var GraphMode : Integer; {режим графики}

DriverPath : String); {путь к драйверу}

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

Если параметр GraphDriverсодержит номер конкретного адаптера, то и второй параметрGraphMode должен иметь номер режима, допустимого при этом адаптере.

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

Параметр DriverPathуказывает путь в каталог, содержащий файлы с необходимыми драйверами. Если в него передается значение «пустая строка», то драйверы должны находиться в текущем каталоге.

Процедура закрытия графического режима CloseGraph

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

Обработка ошибок инициализации

П

Значение

Объяснение

-2

Нет графического адаптера

-3

Не найден файл драйвера

-4

Ошибки в драйвере (в его коде)

-5

Не хватает памяти для загрузки драйвера

-10

Невозможный режим для выбранного драйвера

-15

Нет такого драйвера

роцедураInitGraphвозвращает также и результат своей работы в параметреGraphDriver. В случае ошибки он может принимать значения:

Если же ошибок при инициализации не обнаружено, то в параметре GraphDriverвозвращается номер адаптера.

Еще есть один способ проверки результата проведения графической операции. Он осуществляется с помощью функции GraphResult : Integer,которая возвращает код результата последнего вызоваInitGraph.