
- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «донской государственный технический университет» (дгту)
- •Пояснительная записка к курсовому проекту (работе) по дисциплине «Компьютерная графика и геометрия»
- •Автор проекта (работы) Панасенко Наталья Дмитриевна
- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «донской государственный технический университет» (дгту)
- •Содержание
- •Введение
- •1. Описание программы
- •1.1. Общие сведения
- •2.2. Средства и порядок испытаний
- •3. Руководство системного программиста
- •3.1. Назначение и условия применения программы
- •3.2. Характеристика программы
- •3.3. Структура программы
- •3.4.Описание алгоритмов, функций и переменных
- •Разработка объектов сцены
- •Алгоритм движения
- •3. 5. Настройка программы
- •4. Руководство оператора
- •5. Задачи Задача 1 вариант 8
- •Задача 2
- •Задача 3
- •Задача 4
- •Задача 5
- •Задача 6
- •Задача 7
- •Задача 8 вариант 8
- •Заключение
- •Список использованных источников
- •Статья на тему: Разработка компьютерной графики с .Net c# и OpenGl api. Http://esate.Ru/page/uroki-OpenGl-c-sharp
- •Файл Game1.Cs
- •Файл Program.Cs
2.2. Средства и порядок испытаний
Технические и программные средства, используемые во время испытаний:
Технические:
Виртуальная машина
Тип ЦП: 2,40 GHz;
Системная память: 4,00 ГБ;
Видеоадаптер: 512 МБ;
Клавиатура;
Манипулятор типа «мышь»;
Программные:
Операционная система: MicrosoftWindows 7 / Microsoft C# 2008, XNA 3.1
При проведении испытаний применялся редактор Microsoft C# 2008, XNA 3.1, выявляющий синтаксические и логические ошибки, необъявленные переменные, при обнаружении которых происходит прерывание в выполнении программы и предоставляется возможность отладки программы. Помимо этого среда разработки Microsoft C# 2008, XNA 3.1 позволяет применять такие методы отладки, как пошаговое выполнение программы и др..
Испытания проходили в следующей последовательности:
проверка корректного написания и последующее исправление ошибок, если таковые имеются, о наличии которых можно судить по сообщениям, выдаваемым редактором или отсутствии ожидаемого результата;
проверка правильности работы для каждого пункта программы:
- передвижение наблюдателя по экрану
- открытие, при приближении, дверей тремя способами
-выход из программы
Было выполнено несколько раз испытание на правильное функционирование.
В ходе испытаний ошибок или сбоев найдено не было. Все работает верно.
3. Руководство системного программиста
3.1. Назначение и условия применения программы
Программное обеспечение предназначено для моделирование местности с объектами и может быть использовано для архитектурного моделирования.
Программное обеспечение разрабатывается для персонального компьютера IBM PC с процессором не ниже Pentium-120 со следующими характеристиками:
- объем ОЗУ не менее 20 Mb;
- графический адаптер SVGA;
- манипулятор типа "мышь" и "клавиатура".
ЭВМ должна работать под управлением операционной системы не ниже Windows 98.
3.2. Характеристика программы
Данная программа работает в графическом режиме и поддерживает работу с клавиатурой.
3.3. Структура программы
Программа состоит из 2-х классов (Game1, Program). Game1 – основной класс, где описаны все команды для загрузки контента, рисования изображения на экране, обновления и движения. Program – класс, который запускает игру.
3.4.Описание алгоритмов, функций и переменных
Вся программа реализована в классе Game1, который является ребенком класса Game. Диаграмма классов представлена на рис .1
GraphicsDeviceManager graphics - графика
SpriteBatch spriteBatch – оболочка рисунка
Matrix worldMatrix – матрица дома
Matrix dverMatrix – матрица двери
Matrix okrMatrix – матрица визуального пространства
double [ ] ugol – массив, хранящий угол поворота двери
float dugol[ ] – величина поворота двери
Matrix viewMatrix - матрица наблюдателя
Matrix projectionMatrix - матрица проецирования
BasicEffect effect -
Texture2D t - текстура дома и двери
Texture2D bottom - текстура фона: земля
Texture2D top - текстура фона: небо
Texture2D panorama - текстура фона
VertexPositionTexture v – массив координат вершин с координатами текстур, описывающих позицию дома
VertexPositionTexture v1 – массив координат вершин с координатами текстур, описывающих позицию дома
VertexPositionTexture d – массив координат вершин с координатами текстур, описывающих позицию двери
VertexPositionTexture bot – массив координат вершин с координатами текстур, описывающих позицию земли
VertexPositionTexture pot – массив координат вершин с координатами текстур, описывающих позицию неба
VertexPositionTexture bock – массив координат вершин с координатами текстур, описывающих передний план
VertexPositionTexture frot – массив координат вершин с координатами текстур, описывающих позицию заднего плана
VertexPositionTexture lef – массив координат вершин с координатами текстур, описывающих позицию левого плана
VertexPositionTexture rig – массив координат вершин с координатами текстур, описывающих позицию правого плана
int ad = -1 – переменная определителя дома
int ind – переменная построения дома
int ind1 – переменная построения дома
int ind2 – переменная построения двери
int ind3 – переменная построения визуализации пространства
int ind4 – переменная построения дом визуализации пространства
BoundingBox b - коробка вокруг нашего дома
bool d1 - пересечение выстрелом (лучом)коробки дома
bool d2 - пересечение приближением коробки дома
BoundingBox b1 - коробка вокруг нашей двери
bool d3 - пересечение выстрелом (лучом)коробки двери
bool d4 - пересечение приближением коробки двери