Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа.doc
Скачиваний:
10
Добавлен:
20.06.2014
Размер:
304.64 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ

Курсовая работа

«Реализация базовых алгоритмов трехмерной графики реального времени»

по дисциплине

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

Студент

Ельшаева Н.А.

подпись, дата

фамилия, инициалы

Группа

АС-09

Принял

Назаркин О.А.

ученая степень, звание

подпись, дата

фамилия, инициалы

Липецк 2010

Аннотация

С.25. Ил.1.Библиограф.:4 назв.

Данный курсовой проект содержит расчётно-пояснительную записку и исполняемый файл самой программы. Расчётно-пояснительная записка включает в себя 25 страниц печатного текста. Имеется 1 иллюстрация, поясняющая работу программы. Расчётно-пояснительная записка помимо титульного листа, аннотации, оглавления и библиографического списка содержит ещё 8 разделов:

1. Задание кафедры.

2. Постановка задачи.

4. Математические модели.

5. Описание алгоритмов.

6. Описание структуры ПО.

7. Чертежи сцен.

8. Контрольный пример.

Содержание

Аннотация 1

Содержание 2

1. Задание кафедры 3

2. Постановка задачи 3

3. Математическая модель 3

4. Описание алгоритмов 4

4.1.Алгоритм разбиения сферической поверхности на примитивы 4

4.2.Алгоритм разбиения цилиндрической поверхности на примитивы 4

4.3.Алгоритм вращения камеры 4

4.4.Алгоритм движения камеры 4

5. Описание структуры ПО 5

5.1. Пользовательское управление 5

5.1.1.Управление с клавиатуры 5

5.1.2. Управление мышью 5

5.2. Структура ПО 6

5.3. Используемые технологии 6

5.3.1.Используемые функции DirectX 9 7

6. Чертеж сцены 9

7. Текст программы 10

9. Библиографический список 24

1. Задание кафедры

Реализовать базовые алгоритмы трехмерной графики реального времени с использованием или без использования аппаратной поддержки со стороны графического процессора.

2. Постановка задачи

Сцена, подлежащая визуализации должна быть скомпонована из трехмерных примитивов. Как минимум, сцена должна содержать по пять примитивов разного типа (цилиндров и сфер).

Визуализация предполагает освещение сцены, как минимум, тремя источниками света разного типа (направленные, точечный, прожекторный).

Пользовательский интерфейс должен предоставлять управление: масштабом отображения и ракурсом камеры. При необходимости можно использовать элементы управления источниками света.

Реализация ПО должна предусматривать простейшую анимацию сцены в виде вращения вокруг основных осей 3D пространства.

3. Математическая модель

В 3D-графике применяется понятие камеры, снимающей гипотетическое трехмерное пространство и выдающей его плоское изображение на экран. Камеру можно размещать в разных точках пространства, направлять на разные точки, изменять ее угол обзора и.т.д. Подлежащая отображению сцена создается в виде совокупности трехмерных графических примитивов, на которые разбиты все объекты сцены.

Модель трехмерного тела задана в некоторой системе координат, чаще всего связанной своим началом с какой-либо «ключевой» точкой тела (например с центром сферы). Эта локальная система координат может быть преобразована в глобальную (мировую) систему, которая и подлежит отображению.

Преобразование координат задается матрицами. Отсутствие преобразования - единичная матрица, иначе матрица должна быть отличной от единичной.

Помимо мирового преобразования Direct3D применяет еще преобразование обзора и перспективное преобразование.

Преобразование обзора определяет позицию и направление камеры.

Здесь задается положение наблюдателя в пространстве, точка сцены, на которую направлен взгляд, и вектор направления вверх.

Перспективное преобразование определяет эффект перспективы - искажение параллельности линий. Камера с некоторым фиксированным углом обзора способна «видеть» пространство только внутри этого угла. Кроме того, вводятся ограничения на самую близкую и самую далекую плоскости, воспринимаемые камерой. Видимое пространство получается в форме усеченной пирамиды. Перспективное преобразование как бы растягивает ближнее к камере пространство, преобразуя усеченную пирамиду в кубоид.