- •«Национальный исследовательский
- •Т.Е. Мамонова Лабораторная работа № 12
- •220700 – «Автоматизация технологических процессов и производств».
- •Лабораторная работа № 12
- •Теоретическая часть
- •Цвет устанавливается функцией:
- •Функции для работы с терминалом в текстовом режиме (файл conio.H)
- •Некоторые графические функции
- •Порядок выполнения работы
- •Варианты заданий к лабораторной работе № 12
- •Содержание отчета
- •Список литературы
- •220700 – «Автоматизация технологических процессов и производств». Отпечатано в Издательстве тпу в полном соответствии с качеством предоставляемого оригинал-макета
- •634034, Г. Томск, пр. Ленина, 30
МИНИСТЕРСТВО ПО НАУКЕ И ОБРАЗОВАНИю РФ
Государственное образовательное учреждение высшего профессионального образования
«Национальный исследовательский
ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
УТВЕРЖДАЮ
Директор ИК
_____________ М.К. Сонькин
«____»_____________2011 г.
Т.Е. Мамонова Лабораторная работа № 12
Графика в C++
Методические указания по выполнению лабораторных работ
по курсу «Информатика»
для студентов направлений 220000 – «Мехатроника и робототехника»,
220700 – «Автоматизация технологических процессов и производств».
Издательство
Томского политехнического университета
2011
УДК 519.6
ББК 00000
А00
Мамонова Т.Е.
А00 Графика в C++. Методические указания по выполнению лабораторных работ по курсу «Информатика» для студентов I курса, обучающихся по направлениям 220000 – «Мехатроника и робототехника», 220700 – «Автоматизация технологических процессов и производств» / Т.Е. Мамонова. – Томск: Изд-во Томского политехнического университета, 2011. –18 с.
УДК 519.6
ББК 00000
Методические указания рассмотрены и рекомендованы к изданию методическим семинаром кафедры интегрированных
компьютерных систем управления ИК
«1» сентября 2011 г.
Зав. кафедрой ИКСУ
доктор технических наук ______________ А.М. Малышенко
Председатель учебно-методической
комиссии ______________ В.Н. Шкляр
Рецензент
Доцент ИКСУ ИК НИ ТПУ кандидат технических наук
В.Н. Шкляр
© ГОУ ВПО «Томский политехнический
университет», 2011
© Мамонова Т.Е., 2011
© Оформление. Издательство Томского
политехнического университета, 2011
Лабораторная работа № 12
Графика в C++
Цель работы. Научиться использовать графические функции библиотеки BGI в С++.
Теоретическая часть
Для работы в графическом режиме на компьютере должен быть установлен один из графических адаптеров и монитор, соответствующий этому типу адаптера. Управление экраном в графическом режиме происходит с помощью функций, прототипы которых описаны в заголовочном файле <graphics.h>. Прежде чем использовать графические функции, необходимо установить видеоадаптер в графический режим. Для инициализации графики служит функция initgraph. Ее прототип:
void initgraph (int *driver,int *mode,char *path);
Эта функция считывает в память соответствующий драйвер, устанавливает графический режим, соответствующий аргументу mode и определяет маршрут к папке, в которой находится драйвер BGI. В таблице 1 представлены коды драйверов графических устройств.
Таблица 1. Коды драйверов графических устройств.
Макрос |
Значение |
DETECT |
0 |
CGA |
1 |
MCGA |
2 |
EGA |
3 |
EGA64 |
4 |
EGAMONO |
5 |
IBM8514 |
6 |
HERCMONO |
7 |
ATT400 |
8 |
VGA |
9 |
PC3270 |
10 |
При использовании функции initgraph можно указать или конкретный драйвер, или задать автоматическое определение (детектирование) соответствующего драйвера (макрос DETECT).
Функция mode устанавливает код графического режима. Для каждого драйвера (VGA, CGA, MCGA, EGA, ATT400 ...) существует таблица кодов со значениями от 0 до 5 (см. табл. 2.)
Таблица 2. Коды для драйвера VGA
-
Имя
Значение
Размер поля
Палитра
VGALO
0
640200
16 цветов
VGAMED
1
640350
16 цветов
VGAHI
2
640480
16 цветов
Программы, работающие с графикой BGI, выполняются как DOS приложения. Поэтому для создания программ, использующих графические функции библиотеки BGI, в интегрированной среде Borland C++ необходимо воспользоваться проектом.
Проект – это файл с расширением ”.ide”, в котором определены файлы с исходным текстом программы вместе с указанием полных путей к ней, а также выходной ”.exe” файл. Кроме того, в нем перечислены Borland библиотеки, используемые при трансляции программы. Для выхода из графического режима используются функции:
closegraph( ); //закрыть графический режим;
restorecrtmode( );//перейти в текстовый режим.
Графический экран представляет двумерный массив пикселей. Каждый пиксель соответствует одной точке экрана, имеет две координаты x, y и может иметь свой цвет. Левый верхний пиксель имеет координаты (0,0). Установить цвет пикселя в точке с координатами (х, у) можно с помощью функции:
putpixel (int x, int y, int color);