![]() |
![]() |
![]() |
|
|||||||||
|
![]() | |||||||||||
|
![]() |
||||||||
|
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - C++: Стандартные библиотечные функции работы с графикойC++: Стандартные библиотечные функции работы с графикой2 Волжский Университет им. В.Н. Татищева Факультет Информатики и Телекоммуникаций Курсовая работа Дисциплина: Системное программное обеспечение Тема: «C++: Стандартные библиотечные функции работы с графикой» Тольятти 200г. Содержание Введение1. Анализ графического модуля “graphics.h”1.1 Анализ функции модуля1.2 Анализ констант, типов и глобальных переменных модуля2. Реализация пользовательской библиотеки “mouse.h”ЗаключениеПриложение 1Список используемой литературыВведениеТема данной курсовой работы стандартные библиотечные функции работы с графикой в C++. В данном работе я постараюсь раскрыть основные моменты работы функций стандартного модуля C++, который можно подключить к любому проекту написанном на языке Си, с помощью заголовочного файла graphics.h. Конечно, кроме данного модуля в современных средах разработки программных приложений на данном языке есть и такие не менее интересные модули как glu32.lib и glaux.lib, подключаемые к проектам с помощью заголовочных файлов gl.h, glu.h, glaux.h. Они позволяют программисту показать всю красоту приложения, а также могут использоваться для спецэффектов, но данные модули предназначены для работы с библиотекой opengl32.dll. Использование данной библиотеки, по сути дела, является работа с “компьютерной графикой”, но под графические оболочки таких операционных систем как Windows 9x/2k/XP, Linux Mandrake/Red Hat/Slackware и тому подобных. Эта тема куда более обширная и интересная, но, как мы знаем, модуль graphics.h предназначен, в основном, для работы под операционную систему MS-DOS, в которой просто невозможно использование самого opengl'а. А по этому поводу, я считаю нужным, перейти непосредственно к основному разделу данной работы. Т.е. приступить к рассмотрению стандартных функций.1. Анализ графического модуля “graphics.h”Как было уже сказано, данный модуль используется для работы с графикой под ОС MS-DOS. Функции, используемые в нём, для работы с графикой, да и как и сама графика, довольно примитивны. Итак, начнём. Для инициализации модуля требуется подключить, так называемый, заголовочный файл (#include <graphics.h>). В этом файле описаны все функции, которые требуются для написания программы работающей с “графикой”. 1.1 Анализ функции модуляinitgraph( &grdriver, &grmode, “path”); - функция инициализации графического режима, где &grdriver, &grmode, “path” - параметры загружаемого режима;grdriver и grmode - переменные типа integer;“path” - путь к загружаемому драйверу графического режима.Функция закрытия графического режима: closegraph(); - данная функция без каких либо параметров и закрывает текущий графический режим.Функция определения графического драйвера и видео режима: detectgraph( &grdriver, &grmode);Функция, возвращающая структуру определения палитры: getdefaultpalette(); - возвращает указатель на заданную по умолчанию структуру палитры для текущего драйвера инициализированного по initgraph.getdrivername(); - функция возвращает имя текущего графического драйвера.getgraphmode(); - функция возвращает текущий графический режим.getmoderange( grdriver, &low, &high); - функция возвращает диапазон режимов для данного графического драйвера, где grdriver, low, high - переменные типа integer.graphdefaults(); - сбрасывает текущие настройки в настройки по умолчанию._graphgetmem(); - функция выделения памяти. Эту функцию вызывают подпрограммы в графической библиотеке, чтобы распределить память. Данную функцию можно использовать независимо от графической библиотеки, вызвав её с указанием нужного объёма памяти в байтах._graphfreemem(); - функция освобождения памяти. Используется в сочетании с _graphgetmem().setgraphbufsize(); - функция изменяет внутренний размер графического буфера. Вызывается до initgraph().graphresult(); - возвращает код ошибки для последней неудачно выполненной операции.installuserdriver( int *name, int huge( *detect)); - функция устанавливает драйвер определённый программистом. *name - название нового драйвера, *detect - указатель на дополнительную функцию авто определения, которая может сопровождать новый драйвер. Эта функция (авто определения) не берёт ни каких параметров и возвращает целочисленное значение.registerbgidriver( *grdriver) - Функция сообщает графической системе, что драйвер устройства, на который указывает *grdriver был включён во время “линковки”.registerbgifont( *font) - Функция информирует графическую систему, что шрифт, на который указывает *font был включен во время “линковки”.restorecrtmode() - Функция восстанавливает режим, существовавший до активизации графического режима функцией initgraph().arc( int x, int y, int stangle, int endangle, int radius); - Функция рисует дугу, по заданным координатам x, y, начальным и конечным углом stangle, endangle и заданным радиусом radius.bar( int left, int top, int right, int bottom); - Функция рисует прямоугольник начиная от левого верхнего угла с координатами left, top до правого нижнего угла с координатами right, bot |