Установка графического режима работы

Методические указания

К лабораторной работе

Компьютерная графика

Часть 5

Знакомство с фрактальной графикой

 

 

Цель работы

Познакомиться с основами создания фрактальных композиций при помощи среды программирования Паскаль.

 

 

Задачи работы

Изучить графические возможности языка Паскаль.

 

 

Порядок выполнения работы

3.1Загрузите среду программирования Паскаль. Создайте с ее помощью фрактальную композицию, основанную на повторении пересекающихся окружностей некоторого радиуса. При построении композиции используйте исходные данные из приложения А в соответствии с вариантом, указанным преподавателем. Образец фрактальной композиции предложен на рисунке Б1 приложения Б.

3.2 Создайте многоцветный вариант Вашей композиции, задавая цвет закрашивания отдельных элементов композиции в зависимости от номера шага цикла (см. рисунок Б2 приложения Б).

3.3 Создайте двухцветный вариант данной композиции, основанный на чередовании светлого и темного цвета (см. рисунок Б3 приложения Б).

 

 

Отчет о проделанной работе должен содержать

- название и цель работы;

- номер своего варианта при выполнении работы;

- текст программы к п.3.1 с указанием в скобках изменений для п.3.2. и 3.3;

- рисунки с фрагментами всех трех вариантов Вашей фрактальной композиции;

- ответы на контрольные вопросы пункта 7 в соответствии с указаниями преподавателя.

 

 

Теоретические положения

Понятие фрактальной графики

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

Фрактальная графика является вычисляемой, т.е. изображение строится по некоторым математическим уравнениям либо системам уравнений. В основе созданных таким образом фрактальных композиций лежат мелкие фрактальные объекты, объединенные в фигуры по принципу наследования.

Способность фрактальной графики моделировать композиции вычислительным путем часто используют для автоматизации создания необычных иллюстраций, узоров, космических ландшафтов и т.д.

 

 

Графические возможности языка Паскаль

Язык программирования Паскаль 7.0 содержит обширный набор типов, констант и функций для управления графическим режимом работы экрана, объединенных в стандартный библиотечный модуль GRAPH. С помощью подпрограмм, входящих в данный модуль, можно создавать сложные графические изображения, основанные на использовании разнообразных геометрических фигур. При необходимости замкнутые фигуры могут быть закрашены различными цветами и стилями (образцами) закраски. Для вывода текстовых надписей на графический экран могут быть использованы четыре штриховых и один матричный шрифт.

Подпрограммы модуля GRAPH могут поддерживать различные типы аппаратных графических средств. Настройка на конкретные технические средства осуществляется с помощью специальных программ – драйверов, поставляемых вместе с данным модулем.

 

Установка графического режима работы

Переход в графический режим в среде Паскаль осуществляется с помощью входящей в модуль GRAPH процедуры InitGraph, служащей для инициализации графического экрана. Данная процедура имеет следующий формат:

InitGraph(var Driver, Mode:integer; Path:string),

где переменные Driver и Mode должны содержать тип графического драйвера и его режим работы. Допускается указать Driver=0 для автоматического определения данных параметров по результатам тестирования аппаратуры. Параметр Path определяет маршрут поиска файла графического адаптера.

Графические операторы языка Паскаль позволяют адресоваться к любому элементу (пикселю) графического окна и управлять светимостью этого элемента. Для указания пикселя используется следующая система координат: начало координат (0,0) располагается в левом верхнем углу экрана; горизонтальная координата Х увеличивается слева направо, вертикальная координата Y увеличивается сверху вниз. При стандартном графическом адаптере VGA (в режиме 640х480) правый нижний угол экрана имеет координаты (639, 479), а центр экрана - координаты (319, 239).

Для выхода из графического режима достаточно воспользоваться процедурой CloseGraph.

Пример 1

program pr1;

uses Graph; {Подключение графического модуля Graph}

var d, m: Integer;

begin

d:=0;

m:=0;

InitGraph(d, m,'d:\bp\bgi'); {Переход в графический режим. Строка d:\bp\bgi указывает путь размещения файла Graph.tpu для конкретного компьютера, на котором разрабатывалась данная программа}

circle(319, 239, 100); {Рисование круга радиуса 100 с центром в середине экрана}

readln; {Оператор ввода, используемый в данном случае для задержки изображения на экране вплоть до нажатия на клавишу Enter}

CloseGraph; {Выход из графического режима}

end.

Приведенная выше в примере 1 программа позволяет нарисовать круг радиуса 100 с центром в точке (319, 239). Т.к. данная программа не использует цветовые возможности графического режима, то рисование будет осуществляться цветами по умолчанию – белый рисунок на черном фоне.

 

Использование цветов

Язык программирования Паскаль 7.0 поддерживает 16 основных цветов, обозначаемых соответственно номерами от 0 до 15 (см. таблицу 1).

 

Таблица 1 Константы цвета

Константа цвета Цвет Константа цвета Цвет
0 (Black) Черный 8 (DarkGray) Темносерый
1 (Blue) Синий 9 (LightBlue) Яркосиний
2 (Green) Зеленый 10 (LightGreen) Яркозеленый
3 (Cyan) Голубой 11 (LightCyan) Яркоголубой
4 (Red) Красный 12 (LightRed) Розовый
5 (Magenta) Фиолетовый 13 (LightMagenta) Малиновый
6 (Brown) Коричневый 14 (Yellow) Желтый
7 (LightGray) Светлосерый 15 (White) Белый

 

Основными графическими операторами по работе с цветами являются процедуры модуля GRAPH под именами SetBkColor (служит для установки цвета фона)и SetColor (для установки цвета рисования).

Формат данных операторов следующий:

SetBkColor (Color: word);

SetColor (Color: word),

где переменная Color, имеющая целочисленный тип word, служит для указания требуемого номера цвета.

Например, операторы SetBkColor (1); SetColor (14) позволяют установить режим рисования желтым цветом по синему фону.