Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой проект.rtf
Скачиваний:
32
Добавлен:
28.06.2014
Размер:
4.55 Mб
Скачать

Министерство образования российской федерации.

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

Кафедра Информационных систем и технологий.

Дисциплина – Системная организация САПР.

Подписано к защите Принято

Защита состоится Оценка

Подпись членов коммиссии

Руководитель

Расчетно – пояснительная записка к курсовому проекту.

Тема: Удаление невидимых линий и поверхностей с помощью алгоритма Варнока.

КП 071900.18

Исполнитель: Белов Артём Борисович

Группа: ИТ-41

Содержание.

  1. Обоснование выбора языка программирования ……………….2

  2. Требования к аппаратному обеспечению………………………..2

  3. Основные принципы моделирования трёхмерных объектов....3

  4. Алгоритм Варнока…………………………………………………….5

  5. Описание возможностей программы…………………………….19

  6. Интерфейс…………………………………………….………………21

6.1 Главное окно……………………………………………………21

6.2 Меню. ……………………………………………………………22

  1. Листинг…………………………………………………………………58

  2. Список литературы. …………………………………………………59

1. Обоснование выбора языка программирования.

Представленная курсовая работа разработана среде программирования Delphi 6 от Borland. Данный программный продукт предоставляет широкие возможности для создания прикладных программ под Widows, а также Delphi является наиболее удобной средой программирования, т.к. обладает интуитивно понятным интерфейсом, мощной палитрой средств для разработки пользовательского интерфейса. В тоже время, разработка взаимодействия программа - пользователь не требует больших временных затрат, что позволяет сосредоточить внимания на реализации требуемых алгоритмов.

2. Требования к аппаратному обеспечению системы.

ОС Windows 9x/NT/Me/2000/Xp.

Процессор не ниже Pentium 166 Mhz.

16 Mb Ram.

SVGA 800x600.

HDD Free Space = 300 kb

3. Основные принципы моделирования трёхмерных объектов.

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

Многоугольник определяется его вершинами. Каждая вершина – это трёхмерная точка в декартовой системе координат. Во время конструирования завершенной трёхмерной сцены может возникнуть необходимость поменять местоположение одного или нескольких объектов, повращать или изменить масштаб, для этого необходимо произвести трёхмерное преобразование координат.

Существует краткая математическая запись для выражения преобразования координат – матрично-векторное умножение. Трёхмерная точка представляется трёхэлементными векторами-столбцами.

“Масштабирование координат точки означает умножение каждой координаты на постоянную величину.

Масштабирование представляется следующей матрицей преобразования: , гдеK - фактор масштабирования.

Перенос относится к передвижению объекта в новую точку с сохранением ориентации. Для переноса трёхмерной точки необходимо прибавить соответствующие смещения к X, Y, Z-координатам для получения эффекта движения. Таким образом, перенос основан на сложении двух векторов. Перенос можно выразить как матричное умножение, но для этого необходим “математический костыль” – однородные координаты. К трехмерной координате следует добавить ещё одну со значением 1:

, где X, Y, Z – координаты точки. Это представление известно как точка в однородной системе координат. Согласно этому определению можно реализовать перенос умножением этого вектора на матрицу преобразования размером 4х4, чья последняя колонка содержит параметры переноса: Если умножить четырёхмерный векторV на эту матрицу, то следующий результат, который представляет перенос: Фактически используя эти искусственные однородные координаты, можно выразить все преобразования последовательностью матричных умножений.

Вращение – самое сложное преобразование координат и самое важное, потому что даёт ощущуние объёмного изображения благодаря возможности увидеть объект со всех сторон. Матрицы преобразования при вращении:

- вокруг оси OX правой системы координат,

- вокруг оси OY правой системы координат,

- вокруг оси OZ правой системы координат, где - угол поворота.”1