Обучающая программа Графика программированию в графическом режиме на языке 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>