Обучающая программа Графика программированию в графическом режиме на языке turbo-pascal 7.x
Информация - Компьютеры, программирование
Другие материалы по предмету Компьютеры, программирование
?астоящей программе они скомпанованы для изучения в следующие
разделы:
1.Программирование графических режимов.
2.Управление курсором и полем рисования.
3.Формирование прямолинейных монохромных изображений
4.Управление цветом и стилем изображений.
5.Программирование цветных криволинейных изображений
6.Формирование графических текстов.
7.Программирование озвученных динамических сцен.
Первые два раздела являются справочными, а остальные разделы
содержат теоретическую часть и контрольные вопросы.
0
ПРОГРАММИРОВАНИЕ ГРАФИЧЕСКИХ РЕЖИМОВ
Состав, назначение и взаимное положение операторов управления
графическими режимами в языке TURBO-PASCAL удобно рассматривать в
контексте структуры характерной графической программы:
---------- program - заголовок программы.
I uses Graph - используемые модули.
I {Действия в текстовом режиме}.
I ------ InitGraph - инициализация графических средств
I I {Действия в графическом режиме " по умолчанию".
I I SetGraphMode - изменение графического режима.
I I {Действия в новом графическом режиме}.
I I I-- RestoreCrtMode - временный переход в текстовому режиму.
I I I {Действия в текстовом режиме}.
I I I-> SetGraphMode - возврат в графический режим.
I I {Действия в графическом режиме}.
I I-----> CloseGraph
I {Действия в текстовом режиме}.
I--------> end. - завершение программы.
* proсedure InitGraph(var GraphDriver:integer;
* var GraphMode:integer;
* DriverPath:string);
Инициализирует графическую систему, устанавливает графический
режим, устанавливает исходные значения текущего указателя, палитры,
цвета и т.д..
ПРОГРАММИРОВАНИЕ ГРАФИЧЕСКИХ РЕЖИМОВ
GraphDriver - переменная, в которую необходимо записать код
требуемого графического драйвера или нуль, если
требуется автоматическое определение драйвера.
GraphMode - переменная, в которую процедура помещает код
графического режима.
DriverPath - строка, содержащая путь к драйверу (если строка
пустая, считается, что драйвер находится в текущем
каталоге).
В случае аварийной ситуации процедура устанавливает код ошибки:
-2 - нет графического адаптера;
-3 - нет драйвера устройства;
-4 - ошибка в драйвере;
-5 - нет памяти для загрузки драйвера;
-10 - недопустимый режим для выбранного драйвера.
* procedure CloseGraph(без параметров);
Восстанавливает текстовый режим работы дисплея,бывший до вызова
графической системы, и освобождает динамическую память компьютера,
отведенную под графический драйвер.
* procedure SetGraphMode(Mode:integer);
Mode - графический режим.Изменяет ранее используемый графи-
ческий режим либо возвращает систему в прежний графический режим
после временного перехода к текстовому режиму. Условием использо-
вания оператора является сохранение в динамической области ОЗУ ранее
загруженного графического драйвера.
ПРОГРАММИРОВАНИЕ ГРАФИЧЕСКИХ РЕЖИМОВ
* procedure RestoreCrtMode(без параметров);
Восстанавливает исходный текстовый режим дисплея без потери в
динамической области ОЗУ програмы графического драйвера.
Имеется ряд операторов для получения справок о текущем
графическом режиме:
* function GetDriverName:string; -
Возвращает строковое название
текущего графического адаптера.
* function GetModeName(ModeNumber:integer):string -
Возвращает строковое название
требуемого графического режима.
* function GetMaxMode:integer -
Возвращает максимальный номер
графического режима для текущего
адаптера.
* procedure GetModeRange(GraphDriver:integer;
* var LowMode,HighMode:integer); -
Выдает справку о диапазоне номеров графических режимов задан-
ного графического адаптера. Возвращаемые параметры LowMode и
HighMode означают минимальный и максимальный номера графических
режимов, соответственно.
* function GetGraphMode:integer; -
Возвращает номер текущего графического режима.
ПРОГРАММИРОВАНИЕ ГРАФИЧЕСКИХ РЕЖИМОВ
* procedure GetAspectRatio(var Xasp, Yasp:word); -
Возвращает в своих параметрах ввеличины
дискретов экрана по осям X и Y ,сооответственно.
0
УПРАВЛЕНИЕ КУРСОРОМ И ПОЛЕМ РИСОВАНИЯ
В графическом режиме также как и в текстовом положение выво-
димых на экран данных в каждый момент времени определяется курcо-
ром. Однако, в этом случае курсор невидим. При вхождении в гра-
фический режим с помощью процедуры InitGraph курсор автоматически
помещается в левый верхний угол экрана, фон экрана принимает первый
(черный) цвет палитры. Для определения и изменения положения курсора
без рисовани?/p>