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

Выполнил: Кунеев Павел ИП-1-98



Содержание

Введение

Руководство пользователя

Руководство программиста

Тесты







Введение



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



Руководство пользователя

Системные требования:

Минимальные:Pentium 100 / 8 RAM / 5-10 Мб свободного места на диске/ SVGA TrueColor / KeyBoard

Рекомендуемые: Intel Celeron 4000 / 64 RAM / 5-10 Мб свободного места на диске / видеокарта с 3D акселератором / KeyBoard&Mouse



ОС: Microsoft Windows’95 или Microsoft Windows’98



Для начала работы необходимо запустит файл OPENGL.EXE. 

Чтобы добавить фигуры нужно выбрать пункт меню OpenGL/Добавить фигуру, после чего откроется новое диалоговое окно, в котором можно задать тип фигуры (для данной версии программы это параллепипед или тетрайдер), после чего это диалоговое окно можно закрыть. 

Чтобы построить поверхность нужно выбрать пункт меню OpenGL/Построить поверхность, после построения поверхности будет выдано соответствующее звуковое подтверждение.

Если к уже существующим фигурам и поверхности добавить еще фигур, то можно перестроить поверхность. 

Для удаления фигур или построенной поверхности служит пункт меню OpenGl/Очистить. После выбора этого пункта меню появится диалоговое окно, в котором надо выбрать объект для удаления и нажать кнопку УБРАТЬ, чтобы удалить его. После удаления объект невозможно восстановить.

Чтобы крутить сцену нужно нажать левую кнопку мышки в окне программы и «потащить» сцену в том направлении в котором нужно.

Чтобы передвигать сцену нужно удерживая Shift и левую кнопку потащить сцену в нужном направлении.

Для изменения масштаба можно пользоваться как клавиатурой, так и кнопками ТУЛБАРА. Клавиши «+» и «-» (на основной о дополнительной клавиатуре) служат соответственно для приближения и удаления, а клавиши «*» и «Backspace» для возврата в стандартный масштаб. На тулбаре соответствующие кнопки имеют изображение лупы со знаком «+» и «-».

Чтобы изменить цвета объектов и фона нужно выбрать пункт меню OpenGL/Цвета. В открывшемся диалоговом окне нужно выбрать объект. Первые три ползунка служат для задания интенсивности красного, зелёного и синего цветов, а последний для задания прозрачности.

Для изменения ширины линий или точек, которыми могут отображаться фигуры, нужно выбрать пункт меню OpenGl/Параметры/Линии, или нажать соответствующую кнопку на тулбаре.

Для изменения прорисовки объекта (объект может отображаться 3 способами: только точки, линии, или полностью закрашенным) нужно выбрать пункт меню OpenGl/Параметры/Прорисовка.

Для изменения интенсивности освещения надо выбрать пункт меню OpenGl/Параметры/Освещение.

Для всех настроек есть функция возврата к настройкам по умолчанию. Она осуществляется нажатием кнопки «Стандарт».

При помощи пункта меню OpenGl/Вращение мощно осуществить принудительное вращение сцены, которое прекратится при нажатии левой кнопки мыши в окне программы.

Практически на все команды программа выдаёт звуковой сигнал.



Руководство программиста

Эта программа написана на Microsoft Visual C++ с использованием технологий MFC и OpenGL. 



Классы программы:

DialogADD – класс диалога, осуществляющего добавление фигуры

DialogColor – класс диалога для изменения цветов

DialogLine – класс диалога для изменения толщины линий

DialogFill – класс диалога для изменения вида прорисовки

DialigLight – класс диалога для изменения интенсивности освещения



Основные переменные программы:

DOT – массив вершин многогранников

BOX – массив прямоугольников из которых состоят параллепипеды

TET – массив треугольников из которых состоят тетрайдеры

TRI – массив треугольников из которых состоит поверхность



Основные функции программы:

SoundWav – осуществляет воспроизведение звуковых ресурсов

DrawBoxes – рисует на экране параллепипеды из BOX

DrawTetra – рисует на экране тетрайдеры из TET

DrawSurface – рисует на экране поверхность из TRI



Вычисление минимальной выпуклой оболочки находится в обработчике события на пункте меню ПОСТРОИТЬ ПОВЕРХНОСТЬ.

Вывод всех объектов на экран, задание параметров этих объектов находится в функции display класса COpenGLView.



ТЕСТЫ

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

Ошибки могут произойти в том случае, если используется некачественное программное и аппаратное обеспечение. 

На не очень мощных компьютерах программа может работать довольно долго.