Координаты, окна, страницы




ГРАФИКА В TURBO PASCAL

Курсовая работа

 

Выполнил:

Студент гр.ПИ(Э)-02-Дн Л. С. Пивинская 02850

 

Проверил:

Старший преподаватель И. В. Маслова

 

 

Братск 2003

 

СОДЕРЖАНИЕ

 

 

ВВЕДЕНИЕ..................................... 3

1. ФУНКЦИИ И ПРОЦЕДУРЫ.........................4

1.1. Модуль Graph................................. 4

1.2. Сохранение и выдача изображений................. 4

1.3. Координаты, окна, страницы...................... 5

1.4. Линии и точки................................ 6

1.5. Многоугольники............................... 6

1.6. Дуги, окружности, эллипсы....................... 7

1.7. Краски, палитры, заполнения......................8

2. ЛИСТИНГ ПРОГРАММЫ.......................... 9

ЗАКЛЮЧЕНИЕ.................................. 20

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ........... 21

 

 

ВВЕДЕНИЕ

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

Различие между текстовым и графическим режимами работы монитора заключается в возможностях управления выводом визуальной информации. В текстовом режиме минимальным объектом, отображаемым на экране, является символ, алфавитно-цифровой или какой-либо иной. В обычных условиях экран монитора, работающего в режиме алфавитно-цифрового дисплея, может содержать не более 80 символов по горизонтали и 25 символов по вертикали, то есть всего 2000 визуальных объектов. При этом имеются ограниченные возможности по управлению цветом символов. Конечно, в таком режиме можно выводить на экран не только обычный текст, но и некие графические изображения, однако понятно, что качество таких изображений будет вне всякой критики. Тем не менее, в «героическую» эпоху компьютерной эры этот метод был единственным и поэтому очень популярным способом вывода графиков и целых картин на экран (и на принтер). Программистам иногда удавалось создавать настоящие шедевры «компьютерной псевдографики». Но для серьезной работы с изображениями текстовый режим дисплея абсолютно не подходит.

В графическом режиме минимальным объектом, выводом которого может управлять программист, является так называемый пиксел (от английского Pixel, возникшего в результате объединения слов «рисунок» (picture) и «элемент» (element)). Пиксел имеет меньшие размеры по сравнению с символом (на один символ в текстовом режиме отводится площадка размером в несколько пикселов). Его геометрические размеры определяются разрешением монитора. Разрешение монитора обычно задается в виде rx * ry, где rx — количество пикселов на экране по горизонтали, а ry — количество пикселов по вертикали. На практике используются не произвольные, а некоторые определенные значения разрешения. Такими разрешениями являются, Например, 320х200, 640х480, 800х600, 1024х768, 1280х1024 и т.д.

 

 

1. ФУНКЦИИ И ПРОЦЕДУРЫ

 

 

Модуль Graph

Модуль Graph Турбо Паскаля содержит около пятидесяти различных процедур и функции, предназначенных для работы с графическим экраном. В этом же модуле некоторые встроенные константы, которые могут быть использованы в графических программах. Для того чтобы воспользоваться всеми возможностями модуля Graph, в начале программы(после заголовка)необходимо поместить оператор использования

Uses Graph;

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

и целые окружности и др.

Функция GraphErrorMsg. Возвращает значение типа String, в котором по указанному коду ошибки дается соответствующее текстовое сообщение. Заголовок:

Fanctional GraphErrorMsg(Code: Integer): String;

Здесь Code – код ошибки, возвращаемый функцией GraphResult.

Функция CloseGraph. Завершает работу адаптера в графическом режиме и восстанавливает текстовый режим работы экрана.

 

 

Координаты, окна, страницы

Любое изображение формируется из достаточно простых геометрических фигур. Это точки, отрезки прямых, окружности и т.д. Из геометрии известно, что положение геометрического объекта и его форма задаются координатами его точек.

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

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

Функции GetMaxX и GetMaxY.

Возвращают значения типа Word, содержащие максимальные координаты экрана в текущем режиме работы соответственно по горизонтали и вертикали.

Процедура SetViewPort. Устанавливает прямоугольное окно на графическом экране. Заголовок:

Procedure SetVievPort(X1, Y1, X2, Y2: Integer; ClipOn: Boolean);

Здесь X1..Y2 – координаты левого верхнего(Х1,Y1) и правого нижнего(X2,Y2) углов окна; ClipOn – выражение типа Boolean, определяющее «отсечку» не умещающихся в окне элементов изображения.

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

 

 

Линии и точки

 

Процедура PutPixel. Выводит заданным цветом точку по указанным координатам. Заголовок:

Procedure PutPixel(X, Y: Inteder; Color: word);

Здесь X, Y – координаты точки; Color – цвет точки.

Процедура Line. Вычерчивает линию с указанными координатами начала и конца. Заголовок:

Procedure Line(X1, Y1, X2, Y2: Integer);

Здесь X1..Y1 – координаты начала(X1,Y1) и конца(X2,Y2) линии. Линия вычерчивается текущем стилем и текущим цветом.

Процедура SetLineStyle. Устанавливает новый стиль вычерчиваемых линий. Заголовок:

Procedure SetLineStyle(Type, Pattern, Thick: Word);

Здесь Type, Pattern, Thick – соответственно тип, образец и толщина линии. Тип линии может быть создан с помощью одной из следующих констант:

Const

SolidLn= 0; (Сплошная линия)

DottedLn= 1; (Точечная линия)

CenterLn= 2; (Штрих-пунктирная линия)

DashedLn= 3; (Пунктирная линия)

UserBitLn= 4; (Узор линии определяемый пользователем)

 

Многоугольники

 

Процедура Rectangle. Вычерчивает прямоугольник с указанными координатами углов. Заголовок:

Procedure Rectangle(X1, Y1, X2, Y2: Integer);

Здесь X1..Y2 – координаты левого верхнего угла(X1,Y1) и правого нижнего(X2,Y2) углов прямоугольника. Прямоугольник вычерчивается с использованием текущего цвета и текущего стиля линий.

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-03-31 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: