
Экзаменационные вопросы по информатике + Ответы на Экзаменационные вопросы / Ответы на вопросы по информатике прошлых лет / 18. Инициализация графического режима в Паскале. Масштабирование экрана
.doc18. Инициализация графического режима в Паскале. Масштабирование экрана.
Графический режим ПК существенно отличается от текстового как по принципам функционирования, так и по возможностям. Графика применяется практически во всех серьезных программных разработках, так как позволяет увидеть результаты расчетов в виде чертежей, графиков, иллюстраций в движении. Фирмой Borland разработана библиотека графических функций (Модуль Graph. tpu) как приложение к Turbo-пакетам фирмы Borland и графические драйверы - файлы *. bgi (Borland Graphics Interface ), обеспечивающие взаимодействие программ с графическими устройствами.
Подключение графической библиотеки при программировании в среде Turbo-Pascal производится оператором:
Uses Graph;
Переход из текстового режима к графическому (инициализация графики) осуществляется оператором:
InitGraph(Gd, Gm, 'way');
где Gd - имя графического драйвера (параметр-переменная),
Gm - номер графического режима монитора (параметр-переменная),
'way' - дорожка DOS к файлам с графическими драйверами (*. bgi), например, C:\TP7\BGI .
Файлы графических драйверов принято хранить в поддиректории BGI. Если эти файлы располагаются в текущей директории, то дорожку DOS можно не указывать.
В графическом режиме изображение формируется из точек (пикселов) разных цветов. Количество точек на экране и число допустимых цветов можно задавать выбором подключаемого драйвера и номером графического режима. Вариации графических режимов весьма разнообразны, особенно для качественных мониторов. Например, адаптер IBM 8514 / A может обеспечить разрешение 1024 х768 точек и 256 цветов. Однако не все программные продукты рассчитаны на такие режимы.
Приведем таблицу графических возможностей для мониторов EGA, VGA.
Монитор драйвер режим Число точек Число Число видео-
"Gd" "Gm" на экране цветов страниц
EGA EGA 0 640 x 200 16 4
EGA 1 640 x 350 16 2
VGA VGA 0 640 x 200 16 4
VGA 1 640 x 350 16 2
VGA 2 640 x 480 16 1
Обычно драйверы подключаются в режиме автоопределения используемого монитора ПК. Для этого перед инициализацией графики задается Gd:= Detect; или Gd:= 0;. В этом случае по умолчанию устанавливается режим с наибольшим числом точек на экране, а значение параметра "Gm" игнорируется. Номер наибольшего режима для текущего драйвера возвращает функция GetMaxMode;.
Изменить режим можно процедурой SetGraphMode(Gm);
где 0 =<Gm<= GetMaxMode. Экран при этом очищается.
Разрешающую способность для текущего графического режима можно определить функциями, возвращающими максимальные значения координат экрана:
GetMaxX; - по оси "Х", GetMaxY; - по оси "Y".
Начало координат (X= 0, Y= 0) расположено в левом верхнем углу
экрана. Ось Х направлена слева направо, ось Y - сверху вниз.
Для возврата из графического режима в текстовый можно использовать операторы:
CloseGraph; - полное прекращение работы графической системы,
RestoreCrtMode; - переключение в текстовый режим с возможностью возврата
к текущим установкам графического режима (без восстановления графического изображения) оператором SetGraphMode; .