Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Двухмерные формы

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

Читатель наверняка уже заполнил пробелы в теории двухмерных полигонов с помощью предыдущей главы, поэтому подведем краткий итог. К двухмерным формам относятся прямые и ломаные линии, полигоны и сплайны. Ломаная (curve) — это прямая линия, содержащая более одного сегмента (то есть имеющая три и более вершин Полигон (polygon) — это замкнутая форма с тремя или более ребрами. Полигоны имеют грани, отображающиеся при визуализации изображений, а прямые и ломаные линии — обычно нет.

Зачем использовать двухмерные формы

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

Подготовительная работа в двухмерном пространстве позволяет наглядно представить и определить поперечные сечения, правильную композицию и масштаб элементов. К тому же, плоские полигоны выполняют роль болванки (cheap mesh) — это сленговый термин, указывающий на объект, который состоит из малого количества полигонов, или же объект, для визуализации которого не требуется значительных усилий. Представьте себе преимущество создания стен трехмерной комнаты из двухмерных полигонов, а не трехмерных блоков, содержащих в шесть раз больше граней.

Великолепным примером использования двухмерных форм для построения трехмерных объектов является модель "Gizmo", созданная автором этой книги для компании Mplayer Interactive, которая занимается поддержкой Internet-игр. "Gizmo" — это устройство, имеющее вид высокотехнологичного портативного телевизора и выполняющее роль пользовательского интерфейса для работы со службой Mplayer 6

Все началось с импорта в 3D Studio двухмерного чертежа "Gizmo", созданного в программе Illustrator Томом Гуденом (Tom Gooden) из компании Good Dog Design. Затем сложная конструкция была разбита на несколько основных поперечных сечений, которые изображались в качестве двухмерных форм. Для формирования скелета объекта использовался модифицированный вариант первоначальных рисунков вместе с дополнительными сечениями. Окончательную форму объект приобрел после "наложения" двухмерных форм на поверхность (более подробно далее в этой главе

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

Сплайны

Как уже говорилось ранее, сплайны — это, как правило, кривые линии, задаваемые контрольными точками. Существует несколько видов сплайнов, наиболее распространенными из которых считаются В-сплайны, сплайны Безье и NURBS

Общей особенностью всех сплайнов является то, что они состоят из линий или форм, управляемых посредством ломаной линии или полигона. Ломаная линия или полигон (так называемые контрольные линии/полигоны или каркас) невидимы — они служат лишь для задания степени кривизны конечного сплайна. В зависимости от разновидности сплайна основные точки на управляющей линии отмечаются с помощью контрольных точек (control points) или контрольных вершин (control vertices), в то время как касательные точки (tangent point) или точки плотности (weights) действуют подобно небольшим магнитам, притягивающим к себе сплайны. Манипулирование этими точками и позволяет изменять форму сплайна.

· Форма В-сплайна (B-spline) редактируется с помощью контрольных точек с одинаковыми точками плотности. В этих сплайнах контрольные точки редко располагаются на результирующей кривой.

· В сплайнах Безье (Bezier) контрольные точки всегда находятся на результирующей кривой. Из контрольных точек выходят касательные точки или манипуляторы (handles), позволяющие изменять кривую не затрагивая контрольных точек. С касательными точками можно работать по отдельности, что хотя и уменьшает гладкость кривой, но в тоже время увеличивает возможности редактирования.

· В сплайнах NURBS (неравномерные рациональные В-сплайны) контрольные точки также находятся вне кривой, однако, в отличие от касательных точек, для управления кривой используются точки плотности. Кроме того, имеются узловые точки, определяющие количество контрольных точек на избранном отрезке кривой.

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

Редактирование двухмерных форм

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

Далее описываются разновидности контрольных точек или вершин.

· Стандартные контрольные точки Безъе (standard Bezier control points) содержат манипуляторы, которые являются касательными по отношению к кривой и перемещаются как единое целое при повороте или регулировании длины. Это способствует сохранению гладкости кривых.

· Угловые контрольные точки Безъе (Bezier corner control points) содержат манипуляторы, которые можно редактировать независимо друг от друга, что позволяет создавать менее гладкие кривые.

· Сглаженные контрольные точки (smooth control points) не содержат манипуляторов — они используют определенную формулу для вычисления степени искривления сплайна между контрольными точками.

· Угловые контрольные точки (corner control points) лишают сплайн кривизны, делая сегменты между точками прямыми линиями.

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

К основным операциям редактирования линий и полигонов относятся следующие: перемещение, добавление или удаление линий, вершин, ребер. Обратите внимание, что для этих операций может не существовать специальных команд, поскольку они, как правило, задаются кнопками мыши или клавишами модификации <Shift>, <Ctrl>, <Alt>.

· С помощью добавления вершины (add vertex) создается новая вершина — либо на существующем ребре, либо в качестве продолжения последней точки обычной или ломаной линии.

· Посредством удаления вершины (delete vertex) удаляется вершина с примыкающими к ней ребрами и создается новое ребро между любыми вершинами, с которыми была связана удаленная вершина.

· Операция перемещения вершины (move vertex) позволяет изменять положение выбранной вершины и связанных с нею ребер.

Во многих программах первая вершина (созданная первой по счету) отмечается при редактировании обрамляющим прямоугольником или другим цветом. Это несущественно для большинства операций, но влияет на операцию наложения (skinning), описываемую далее в этой главе. Тем не менее, любая вершина может быть назначена первой с помощью соответствующего средства редактирования многоугольников или сплайнов, которое, как правило, называется First (первый) или First vertex (первая вершина

Программы трехмерного моделирования, хотя и реже, чем основные команды редактирования линий и вершин, могут поддерживать операции двухмерного обрезания (trim) и закругления (round/fillet) Обрезание зачастую активизируется щелчком на соответствующей кнопке для начала операции, а затем выбором линий в определенном порядке, что, однако, зависит от конкретной программы.

· Обрезание линий (trim) соединяет перекрывающиеся линии в точке их пересечения и удаляет элементы, выходящие за линию.

· Скос линий (bevel) образует новый сегмент, соединяющий выбранные точки. Участки, лежащие за выбранными точками, также удаляются.

· Закругление (round/fillet), подобно скосу линий, создает новый сегмент, но в данном случае создается сглаженная кривая.

К основным модификациям сплайнов относятся перемещение, добавление или удаление контрольных точек, корректировка касательных направляющих или точек плотности. Для этих операций, как и в случае прямой/ломаной линии и полигона, может не предусматриваться специальных команд, которые выполняются с помощью клавиш мыши или клавиш модификации <Shift>, <Ctrl>, <Alt>.

· Добавление контрольной точки (add control point) создает новую вершину либо на существующей кривой, либо в качестве продолжения последней точки кривой.

· Удаление контрольной точки (delete control point) удаляет вершину с прилегающими к ней кривыми; между вершинами, с которыми была связана удаленная вершина, создается новая кривая.

· Перемещение контрольной точки (move control point) позволяет изменять положение выбранной вершины и связанных с ней кривых.

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

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

Разрешение формы

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

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

Общим значением, отражающим разрешение формы или объекта, является количество содержащихся в них шагов. Шаги (steps) указывают на число дополнительных вершин, создаваемых между контрольными точками сплайна или вершинами полигона. Например, размер шага, равный 0, будет означать, что никаких дополнительных вершин не добавляется, поскольку прямая проходит между исходными контрольными точками или вершинами за один шаг. Если же размер шага равен 3, то будет добавлено три дополнительных вершины, разделяющие прямую между исходными точками на четыре сегмента.

Присоединение/отсоединение двухмерных форм

Иногда для соединения отдельных элементов рисунка или создания сложной формы приходится объединять друг с другом двухмерные формы. Операция присоединения (attach) является общепринятой командой программ трехмерного моделирования, позволяющей соединять отдельные элементы в единый объект (рис. 315) Реализации этой команды различаются — одни программы сами выдают запрос о соединении двухмерных вершин при их сближении, в других необходимо выбрать элементы и специальную команду из меню

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

Булевы операции

Булевы операции (названные так в честь математика XIX века Джорджа Буля) позволяют достраивать форму путем ее комбинирования с другой формой или вырезания одной формы из другой. Булевы операции — очень мощные и полезные инструменты моделирования, поскольку позволяют создавать формы, на построение которых путем ручной манипуляции вершин ушло бы гораздо больше времени.

Формы, выбранные для этих операций, называются операндами (operands), а порядок их выбора влияет на результат некоторых операций, например, на извлечение. К другим булевым операциям относятся добавление, пересечение и разбиение 16 Обратите внимание, что в разных программах имеется тенденция использования различных терминов для обозначения булевых операций, однако сам набор операций остается неизмененным.

· Операция сложения (add) объединяет формы, смешивая их содержимое и убирая перекрывающиеся элементы. Эта операция используется для построения очень сложных форм из множества простых объектов подобно тому, как поперечное сечение шестерни складывается из окружностей и прямоугольников.

· Операция вычитания (subtract) удаляет из первой формы любые перекрывающие ее части второй формы. Применяйте извлечение для отрезания элементов формы или создания "вырезных профилей" при построении полых объектов.

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

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

Импорт и экспорт форм

Еще одним преимуществом работы с плоскими формами является то, что они без труда переносятся из программ двухмерной графики в программы трехмерного моделирования и наоборот. Это означает, что существует возможность экспортировать (сохранять в совместимом формате) изображение, созданное, например, в программе Adobe Illustrator или CorelDRAW и импортировать его в программу трехмерного моделирования.

Большинство программ поддерживают, по крайней мере, один двухмерный формат экспорта/импорта. Наибольшее распространение получил формат DXF (Drawing exchange Format — формат обмена рисунков), а также AI (Adobe Illustrator) и IGES (Initial Graphics Exchange Specification — базовая спецификация графического обмена Более подробная информация по этой теме представлена в главе, "Визуализация и вывод изображений".

<== предыдущая лекция | следующая лекция ==>
Параметрическое моделирование | Преобразование двухмерных форм в трехмерные объекты
Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 732; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.036 сек.