ДонНТУ   Портал магистров


Реферат по теме выпускной работы

Содержание

Введение

С развитием компьютерных технологий развиваются компьютерные науки. Одним из актуальных, в наше время, направлением в компьютерных науках является решение задач графического моделирования при помощи вычислительной техники. В настоящее время элементы компьютерной графики используются в различных сфера жизни: в архитектуре, строительстве, машиностроении, для создания игр и фильмов, а также во многих других областях. В нашем ВУЗе существуют свои разработки, в области графического моделирования, представленные в виде графической библиотеки и интерактивной системы моделирования, которая обеспечивает возможность построения комплексного чертежа. Эти разработки направлены на усовершенствование учебного процесса в дисциплинах, которые так или иначе связаны с графическим моделированием. Однако они имеют не исследованные области, некоторые, определенные недостатки и недоработки.

1. Актуальность темы

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

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

2. Цель и задачи исследования, планируемые результаты

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

Усовершенствование библиотеки заключается в следующих основных задачах:

  1. Разработка средств построения базовых трёхмерных (далее 3D) моделей фигур.
  2. Создание инструментария поддерживающего возможности манипуляции 3D фигурами;
  3. Реализация возможности представления базовых трёхмерных моделей фигур в реалистичном виде;
  4. Разработка механизма сечения трехмерных объектов объектов;
  5. Поддержка связи между существующей библиотекой, позволяющей выполнять построение комплексного чертежа, и разрабатываемого дополнительного модуля, предназначенного для моделирования 3D объектов.

Объект исследования: связь комплексного чертежа с трёхмерными объектами

Предмет исследования: построения комплексного чертежа, генерация трёхмерных объектов в реалистичном виде, построения сечения объектов

3. Обзор исследований и разработок

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

3.1 Обзор международных источников

Еще в прошлом веке были заложенные, разработаны общие принципы проектирования графических систем, стандарты и протоколы, описывающие алгоритмы и методы, в них. Данные принципы хорошо описаны в книге П.В. Вельтмандера [1]. С усложнением и расширением возможностей аппаратных средств совершенствовались и графические системы, при этом менялись подходы к их проектированию и разработки.

С появлением объектно-ориентированных языков графические системы используют объектные подход в своей работе, они оперируют целостными сущностями, обладающими набором свойств и операций (методов). За счет разделения программного кода на составляющие и построения иерархии классов, процесс проектирования значительно упрощается. В материалах Дерябинского Н.Б., Денисова Е.Ю. [2] описан подход к проектированию систем компьютерной графики на основе объектно-ориентированной модели, призванный минимизировать трудозатраты на разработку.

Новейший подход к проектированию графических систем основан на более высоком уровне абстракции. Компонентно-ориентированный подход разделяет конечную систему на набор компонентов и служб с хорошо определенным интерфейсом. Прикладному программисту, не нужно знать как работает компонент, все что требуется для его использования в системе — это знание его интерфейса, т.е как его подключить к системе и как использовать его возможности. Применение подобного подхода описано в статье «Муниципальная ГИС для российских условий: недорогие масштабируемые решения на стандартном ядре» журнала «САПР и графика» [3]. На этом подходе базируется большинство систем управления жизненным циклом продукции (статья журнала «САПР и графика») [4], в которых интегрированы модули для поддержки визуализации модели, математических расчетов, хранения и передачи данных, документирования конструкторской информации и т.д.

3.2 Обзор локальных источников

Идея создания системы геометрического моделирования, поддерживающей соответствие между плоским и пространственным представлением фигур, была предложена в статье Карабчевксого В.В. и Хлепитько И.В. [5], в качестве обучающей системы, позволяющей студентам выполнять построения на комплексном чертеже и одновременно просматривать результаты построения в 3d сцене. В качестве реализации этой идеи была предложена система Spin, описанная в статье Карабчевского В.В. [6], с базовым набором двухмерных элементов и преобразованием проекций отрезка в его трехмерное представление. С помощью Spin можно решить такие задачи начертательной геометрии как опускание перпендикуляра из точки на плоскость, поиск точки пересечения прямой и плоскостью, поиск натуральной величины объектов и т.д.

3.3 Обзор национальных источников

Подобная, системе spin, Бурчаком И.Н. и Величко В.Л. была предложена своя система [7]. Система ProGeTeach позволяет в интерактивном режиме производить построения на эпюре Монжа и на его основе создавать 3d модель. С точки зрения примитивов, которые используются при построении, возможности системы ограничены, здесь присутствуют только отрезки прямых линий и точки.

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

4. Анализ основного материала исследования

Основой для исследований и разработок послужила работа выпускника нашего ВУЗа [5], для этого был проведен анализ последних публикаций. В данной работе была создана графическая библиотека «SPIN», однако она была не до конца реализована. Помимо этого работа содержит интерактивную систему с возможностью построения комплексного чертежа и генерации проволочной трёхмерной модели. Преимуществами этой работы является то, что рабочая область системы адаптирована под построения комплексного чертежа, разработаны возможности создания проекций стандартных объектов, сечение объектов в 2D представлении, а так же многое другое. В работе имеются следующие недостатки: ограниченное количество объектов для построения, трёхмерное представление только в проволочном виде, нет возможности просмотра трёхмерных объектов в реалистичном виде.

Усовершенствование библиотеки SPIN заключается в разработке следующего инструментария:

  1. средств построения базовых трёхмерных (далее 3D) моделей фигур;
  2. возможности манипуляции 3D фигурами;
  3. представления базовых трёхмерных моделей фигур в реалистичном виде;
  4. механизм сечения объектов;
  5. поддержка связи между существующей библиотекой «SPIN», позволяющей выполнять построение комплексного чертежа, и разрабатываемого дополнительного модуля «3DObjects», предназначенного для моделирования 3D объектов.

Разрабатываемый модуль состоит из наборов средств и инструментов для поддержки возможности выполнения различных построений, как в двухмерном представлении, так и в трёхмерном. Выполнение геометрических преобразований в пространстве, основывается на переходе координат точки в новые координаты, по средствам общих формул [8]:

Формулы преобразования координат точек
или их матричного представления:
Матрицы преобразования координат точек

Для разработки средств манипуляции трёхмерными моделями фигур применяются аффинные преобразования [9]. Они позволяют выполнять поворот, смещение, масштабирование и другие операции в пространстве и на плоскости. Моделирование тел вращения состоит в построения полигональной модели путем расчёта координат точек равномерно распределённых по границе поверхности тела вращения, а в случае более сложных объектов – возможно комбинирование нескольких простых тел вращения с последующим соединением соответствующих вершин [10]. В основе средств представления 3D объектов в реалистичном виде лежит метод построения BSP-дерева. Примеры использование данного средства можно увидеть на рисунке 1.

Закраска трёхмерных объектов

Рисунок 1 – Закраска трёхмерных объектов

Инструмент для выполнения сечения трёхмерных объектов основывается на следующем методе. Изначально задаётся плоскость сечения, далее выполняется проверка положения вершин плоскостей полигональной модели трехмерного объекта относительно заданной плоскости сечения. Вершины разделяются на те, которые за плоскостью сечения и на те, которые перед ней. Если плоскость сечения пересекает плоскость полигональной модели [11], то последняя разделятся на более меньшие плоскости. Необходимо, чтобы все вершины всех плоскостей полигональной модели находились либо за плоскостью сечения, либо перед. Таким образом, трёхмерная модель фигуры разделяется (сечётся) на две части относительно плоскости сечения. Каждая из частей, получившихся в результате сечения, представляет собой независимые трёхмерные объекты, к которым возможно применения инструментов и средств манипуляции 3D моделями.

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

Сечение трёхмерных объектов

Рисунок 2 – Сечение трёхмерных объектов

Структура фактически содержит в себе два модуля:

  1. модуль «SPIN», предназначенный для построения комплексных чертежей;
  2. модуль «3DObjects» [12], который позволяет работать с трехмерными моделями фигур;
Каждый из модулей имеет свою рабочую область, имеет свой математический аппарат, может работать как в комплексе, так и автономно(см. рис. 3-6).
Построение куба в 3DObjects

Рисунок 3 – Построение куба в 3DObjects

Построение цилиндра в 3DObjects

Рисунок 4 – Построение цилиндра в 3DObjects

Построение конуса в 3DObjects

Рисунок 5 – Построение конуса в 3DObjects

Построение сферы в 3DObjects

Рисунок 6 – Построение сферы в 3DObjects

На рисунке 7 представлено комплексное использование «SPIN» и «3DObjects». На данном рисунке продемонстрировано построение комплексного чертежа конуса, его сечения, генерацию проволочной и реалистичной модели по комплексному чертежу.

Построение куба в 3DObjects

Рисунок 7– Комплексное использование «SPIN» и «3DObjects»
(анимация — разрешение: 683 x 350 px; объем: 116 kb; кадров: 7; задержка между кадрами: 1с; количество повторений: 7)

Выводы

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

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

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

При написании данного реферата магистерская работа еще не завершена. Окончательное завершение: декабрь 2012 года. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.

Список источников

  1. Вельтмандер П.В. Учебное пособие «Архитектуры графических систем» - (Учебное пособие в 3-х книгах) Книга 3 — Новосибирский государственный университет. — 1997. [Электронный ресурс]. Страница доступа: http://cylib.iit.nau.edu.ua/...
  2. Дерябин Н.Б., Денисов Е.Ю. Объектно-ориентированная инфраструктура систем компьютерной графики. // Материалы 11-го научно-практического семинара «Новые информационные технологии в автоматизированных системах » — М.:МГИЭМ. — 2008. — с. 10-15.
  3. Муниципальная ГИС для российских условий: недорогие масштабируемые решения на стандартном ядре // Журнал «САПР и графика». [электронный ресурс]. Страница доступа: http://www.sapr.ru/...
  4. Особенности внедрения на предприятиях и методы интеграции CAD/CAM/PDM/FRP/MRP/MES/PLM- и ERP-систем // Журнал «САПР и графика». [Электронный ресурс]. Страница доступа: http://www.sapr.ru/...
  5. Карабчевксий В.В., Хлепитько И.В. Средства разработки систем геометрического моделирования // Научные нотации. Межвузовый сборник (по направлению «Инженерная механика»). Выпуск 22. Часть 1. «Современные проблемы геометрического моделирования» (апрель, 2008). – Луцк, 2008. – С.133-137.
  6. Карабчевский В.В. Компьютерные технологии в преподавании графических дисциплин для специальности «Программное обеспечение» // Труды международной научно-практической конференции «Эффективность инженерного образования в XXI веке». — Донецьк: ДонНТУ. — 2001. — c. 260-267.
  7. Бурчак И.Н., Величко В.Л. Программа сопровождения дисциплины «Начертательная геометрия» для использования в системе дистанционного обучения // Научные записки. Межвузовский сборник (по направлению «Инженерная механика»). Выпуск 22. Часть 1. «Современные проблемы геометрического моделирования» (апрель, 2008). - Луцк. - 2008. - С. 45-50.
  8. Роджерс Д. «Алгоритмические основы машинной графики»: Пер. с англ.-М.:Мир, 1989.-512с.
  9. Рождерс Д., Адамс Дж. «Математические основы машинной графики»: Пер. с англ.- М.: Мир, 2001.-604с.
  10. Ламот Андре. Программирование трехмерных игр для Windows. Советы профессионала по трехмерной графике и растеризации.: Пер. с англ. –М.: Издательский дом «Вильямc», 2004.-1424с.:ил.-Парал.тит.англ.
  11. Шикин Е.В., Боресков А.В. Компьютерная графика. Полигональные модели.: - Москва, Диалог-МИФИ, 2000.-464с.
  12. Мак-Дональд. Мэтью. WPF: Windows Presentation Foundation в .NET3.5 с примерами на С# 2008 для профессионалов. 2-е издание: Пер. с англ.-М.:ООО «И.Д. Вильямс», 2008.-928с.:ил.- Парал. тит. англ.