ИСПОЛЬЗОВАНИЕ БИБЛИОТЕКИ GRAPH
Министерство образования и науки РФ
ГОУ ВПО МО «Коломенский государственный педагогический институт»
Курсовая работа по информатике на тему:
“Графические возможности TurboPascal 7.0”
выполнил: студент
группы Инф 41 Малышев А.А.
проверил: доц. Гуськова Е.Н.
Коломна 2008
СОДЕРЖАНИЕ
ВВЕДЕНИЕ..................................... 3
Использование библиотеки Graph...................... 4
Переход в графический режимивозврат в текстовый................ 4
Краткая характеристика графических режимов работы
дисплейных адаптеров...................................... ... 4
Процедуры и функции............................. .5
Координаты, окна, страницы......................... 9
Линии и точки.................................. 12
Многоугольники................................. 17
Дуги, окружности, эллипсы......................... 18
Краски, палитры, заполнения........................ 20
Примеры..................................... .24
ЗАКЛЮЧЕНИЕ.................................. 27
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ........... 28
Введение
В данной курсовой работе рассматриваются различные функции и процедуры предназначенные для изображения графических объектов в графическом режиме Турбо Паскаля.
Существует 2 вида работы монитора: текстовый и графический. Различие между текстовым и графическим режимами работы монитора заключается в возможностях управления выводом визуальной информации. В текстовом режиме минимальным объектом, отображаемым на экране, является символ, алфавитно-цифровой или какой-либо иной. В обычных условиях экран монитора, работающего в режиме алфавитно-цифрового дисплея, может содержать не более 80 символов по горизонтали и 25 символов по вертикали, то есть всего 2000 визуальных объектов. При этом имеются ограниченные возможности по управлению цветом символов. Конечно, в таком режиме можно выводить на экран не только обычный текст, но и некие графические изображения, однако понятно, что качество таких изображений будет вне всякой критики. Тем не менее, в «героическую» эпоху компьютерной эры этот метод был единственным и поэтому очень популярным способом вывода графиков и целых картин на экран (и на принтер). Программистам иногда удавалось создавать настоящие шедевры «компьютерной псевдографики». Но для серьезной работы с изображениями текстовый режим дисплея абсолютно не подходит. Поэтому целью данной работы является:
Рассмотреть дополнительные графические возможности TurboPascal 7.0.
Рассмотреть примеры по расчёту экранных координат.
Использование библиотеки GRAPH
Начиная с версии 4.0, в состав Турбо Паскаля включена мощная библиотека графических подпрограмм Graph, остающаяся практически неизменной во всех последующих версиях. Библиотека содержит в общей сложности более 50 процедур и функций, предоставляющих программисту самые разнообразные возможности управления графическим экраном. Для облегчения знакомства с библиотекой все входящие в нее процедуры и функции сгруппированы по функциональному принципу.
1.1 ПЕРЕХОД В ГРАФИЧЕСКИЙ РЕЖИМ
И ВОЗВРАТ В ТЕКСТОВЫЙ
Стандартное состояние ПК после его включения, а также к моменту запуска программы из среды Турбо Паскаля соответствует работе экрана в текстовом режиме, поэтому любая программа, использующая графические средства компьютера, должна определенным образом инициировать графический режим работы дисплейного адаптера. После завершения работы программы ПК возвращается в текстовый режим.
1.2. ХАРАКТЕРИСТИКА ГРАФИЧЕСКИХ РЕЖИМОВ РАБОТЫ ДИСПЛЕЙНЫХ АДАПТЕРОВ
Настройка графических процедур на работу с конкретным адаптером достигается за счет подключения нужного графического драйвера. Драйвер — это специальная программа, осуществляющая управление теми или иными техническими средствами ПК. Графический драйвер управляет дисплейным адаптером в графическом режиме. Графические драйверы разработаны фирмой Borlandпрактически для всех типов адаптеров. Обычно они располагаются на диске в отдельном подкаталоге BGIв виде файлов с расширением BGI(от англ.: BorlandGraphicsInterface — графический интерфейс фирмы Borland). Например, CGA.BGI — драйвер для СС4-адаптера, EGAVGA.BGI — драйвер для адаптеров EGAи VGAи т.п.
Выпускаемые в настоящее время ПК оснащаются адаптерами, разработанными фирмой IBM, или совместимыми с ними. Все они имеют возможность работы в графическом режиме. В этом режиме экран дисплея рассматривается как совокупность очень близко расположенных точек — пикселей, светимостью которых можно управлять с помощью программы.
В графическом режиме минимальным объектом, выводом которого может управлять программист, является так называемый пиксел (от английского Pixel, возникшего в результате объединения слов «рисунок» (picture) и «элемент» (element)). Пиксел имеет меньшие размеры по сравнению с символом (на один символ в текстовом режиме отводится площадка размером в несколько пикселов). Его геометрические размеры определяются разрешением монитора. Разрешение монитора обычно задается в виде rx * ry, где rx — количество пикселов на экране по горизонтали, а ry — количество пикселов по вертикали. На практике используются не произвольные, а некоторые определенные значения разрешения. Такими разрешениями являются, Например, 320х200, 640х480, 800х600, 1024х768, 1280х1024 и т.д.
Графические возможности конкретного адаптера определяются разрешением экрана, т.е. общим количеством пикселей, а также количеством цветов (оттенков), которыми может светиться любой из них. Кроме того, многие адаптеры могут работать с несколькими графическими страницами. Графической страницей называют область оперативной памяти, используемая для создания «карты» экрана, т.е. содержащая информацию о светимости (цвете) каждого пикселя. Ниже приводится краткая характеристика графических режимов работы наиболее распространенных адаптеров.
Адаптер CGA(ColorGraphicsAdapter — цветной графический адаптер) имеет 5 графических режимов. Четыре режима соответствуют низкой разрешающей способности экрана (320 пикселей по горизонтали и 200 по вертикали, т.е. 320x200) и отличаются только набором допустимых цветов — палитрой. Каждая палитра состоит из трех цветов, а с учетом черного цвета несветящегося пикселя — из четырех: палитра 0 (светло-зеленый, розовый, желтый), палитра 1 (светло-бирюзовый, малиновый, белый), палитра 2 (зеленый, красный, коричневый) и палитра 3 (бирюзовый, фиолетовый, светло-серый). Пятый режим соответствует высокому разрешению 640x200, но каждый пиксель в этом случае может светиться либо каким-то одним заранее выбранным и одинаковым для всех пикселей цветом, либо не светиться вовсе, т.е. палитра этого режима содержит два цвета. В графическом режиме адаптер CGAиспользует только одну страницу.
Адаптер EGA(EnhancedGraphicsAdapter — улучшенныйграфический адаптер) может полностью эмулировать графические режимы адаптера CGA. Кроме того, в нем возможны режимы: низкого разрешения (640x200, 16 цветов, 4 страницы) и высокого разрешения (640x350, 16 цветов, 1 страница). В некоторых модификациях используется также монохромный режим (640x350, 1 страница, 2 цвета).
Адаптер MCGA(Multi-ColorGraphicsAdapter — многоцветный графический адаптер) совместим с CGA,и имеет еще один режим — 640x480, 2 цвета, 1 страница. Такими адаптерами оснащались младшие модели серии ПК PS/2 фирмы IBM. Старшие модели этой серии оснащаются более совершенными адаптерами VGA(VideoGraphicsArray-графический видеомассив). Адаптер VGAэмулирует режимы адаптеров CGAи EGAи дополняет их режимом высокого разрешения (640x480,16 цветов, 1 страница).
Не так давно появились так называемые cynep-KCL4 адаптеры (SVGA) cразрешением 800x600 и более, использующие 256 и более цветовых оттенков. В настоящее время эти адаптеры получили повсеместное распространение, однако в библиотеке Graphдля них нет драйверов. Поскольку SVGAсовместимы с VGA, для управления современными графическими адаптерами приходится использовать драйвер EGAVGA.BGIи довольствоваться его относительно скромными возможностями.
Несколько особняком стоят достаточно популярные адаптеры фирмы Hercules. Адаптер HGCимеет разрешение 720x348, его пиксели могут светиться одним цветом (обычно светло-коричневым) или не светиться вовсе, т.е. это монохромный адаптер. Адаптер HGC+ отличается несущественными усовершенствованиями, а адаптер HICC(HerculesInColorCard) представляет собой 16-цветный вариант HGC+.
2. Процедуры и функции
Процедура InitGraph. Инициирует графический режим работы адаптера. Заголовокпроцедуры:
Procedure InitGraph(var Driver,Mode: Integer,- Path: String);
Здесь Driver — переменная типа Integer, определяет тип графического драйвера; Mode — переменная того же типа, задающая режим работы графического адаптера; Path — выражение типа String, содержащее имя файла драйвера и, возможно, маршрут его поиска.
К моменту вызова процедуры на одном из дисковых носителей информации должен находиться файл, содержащий нужный графический драйвер. Процедура загружает этот драйвер в оперативную память и переводит адаптерв графический режим работы. Тип драйвера должен соответствовать типу графического адаптера. Для указания типа драйвера в модуле предопределены следующие константы
Const
{Режим автоопределения типа}
Detect
= 0;
CGA
= 1;
MCGA
= 2;
EGA
= 3;
EGA64
= 4;
EGAMono
= 5;
IBM8514
= 6;
HercMono
= 7;
ATT400
= 8
VGA
= 9
PC3270
= 10
Большинство адаптеров могут работать в различных режимах. Для того, чтобы указать адаптеру требуемый режим работы, используется переменная Mode, значением которой в момент обращения к процедуре могут быть такие константы:
const
{Адаптер CGA:}
CGAC0 = 0;
{Низкое разрешение, палитра 0}
CGAC1 = 1;
{Низкое разрешение, палитра 1}
CGAC2 = 2;
{Низкое разрешение, палитра 2}
CGAC3 =3;
{Низкое раз