Основы САПР (CAD,CAM,CAE) - (Кунву Ли)(2004) (951262), страница 98
Текст из файла (страница 98)
1?о результатам, полученным на шаге 4, ненужные группы граней удаляются из каждого объема. Для примера с операцией объединения из объемов А и В удаляются соответственно группы Аг и Вь Форму обьемов А и В после удаления ненужных групп граней илюстрирует рис. Г.7. Сложной топологической операции, необходимой для создания объема, можно избежать, удалив ненужные группы граней из исходного обьема, вместо того чтобы создавать новый объем из отобранных групп граней.
Как упоминалось ранее, подходы, изложенные в работах 1132, 1151, требуют атой топологической операции. Рис. Г.7. Объемы после удаления ненужньж групп гранеи В качестве примера рассмотрим удалешге группы граней Аг из объема А. Грани группы Аг можно удалить путем уничтожения ребер Ег и Бг (рис. ГВ). В общем случае грани, принадлежащие группе, удаляются путем уничтожения всех их ребер, кроме ксребер. Ксребра уничтожать не следует, поскольку они также являются граничными ребрами других групп гргней, которые сохраняются.
Ребро Ег удаляется оператором Эйлера КЕ1., который также объединяет грани Р, и Рг (рис. Г.9, а). Аналогичным образом с помощью оператоРа КЕЕ удаляется ребро Бг (рис. Г.9, б). Теперь геометрическая информация, ХраНИМая дпя:Граин 'Р„НЕ Гяггаст, СММСЛа7.к,на СлафЬщща.щаГЕ ИСПОЛЬЗуЕцая только информация о ее внешнем кольце, Р, Рис. Г.В. Топологичес«ие элементы, принадлежащие к группе Яг 1 г 6. Два объема, полученные на шаге 5, склеиваются по общей границе (рис. Г.1Щ) . Ту же процедуру склеивания необходимо применить к другим группам гра,",'-,' «4' ней при использовании операторов пересечения и разности. Для примера, изображенного на рис.
Г.10, процедура склеивания выполняется следующим образом. Во-первых, определяются восемь пар совпадающих вершин н восемь пар совпадающих ребер„и пара вершин соединяется операторами КРМН и МЕКН. Как объяснялось ранее, два объема будут объединв ны оператором КРМН и сохранены в одной оболочке. Более того, одно из двух общих граничных колец станет кольцом отверстия для другого в результате применения оператора КРМН.
Оператор МЕКН соединяет пару совпадающнХ .- вершин путем присоединения кольца отверстия к внешнему кольцу. Оставшиеся семь пар вершин соединяются путем семикратного применения опеРатора МЕХ (рис. Г.11). Во-вторых, каждая пара вершин, соедушенных ребром. ':, иулевеггй дливьц:уйвдйетая оператором кадаг.".Этот оператор применяется восемь раз, поскольку: имеется восемь вершин', соединенных ребрами нулевой длины. Обратите шгивгание, что множественные ребра и вырожденное кольцо до сих пор существуют для каждого ребра, на что указывает жирная линия на рис.'7.11.
Наконец, восьмикратным применением оператора КЕ1. удаляются множественные ребра и вырожденные кольца. Приложение Д Рмв екь х меь 8 х КЕЕЧ х кеь Рис. Г.11. Пошаговая иллюстрация процедуры склеивания 7. Далее определяется, имеет ли полученный объем множественные несвязанные оболочки. Этот шаг необходим, поскольку булевская операция может привести к появлению нескольких объемов, что демонстрирует рис. Г.12. Рис.
Г.12. Булевская операция, приводящая к появлению нескольких объемов Структура данных и топологиыеские операторы для немногообразных систем моделирования Д.1. Структура данных В разделе 5.3.2 мы представляли объем в виде трех таблиц — грани, ребра и вершины. Можно представить себе хранение списков топологических элементов:.''.,-",81 немногообразной модели аналогичным способом.
Такой подход, предложенныи -!2!" в 11091, иллюстрирует рис. Д.1. Объект, в данном случае пирамида со слоистой ';:л« гранью и свободным ребром, состоит из объема, соответствующего пирамиде,'~' грани, соответствующей слоистой грани„и ребра, соответствующего свободнолгу".г ребру. Объем определяется оболочкой, окружающей объект, а оболочка снова.'."':,' определяется списком поверхностей (см. таблицу граней в разделе 5.3.2). Далее,:.':,;: с каждой гранью связаны кольца, и каждое кольцо имеет список ребер (см. таб-:-- лицу ребер в разделе 5.3.2). Аналогичным образом, кахслое ребро имеет список;,' вершин (см. таблицу вершин в разделе 5.3.2).
Структура данных, представлен-' '' ная на рис. Д.1, а, представляется весьма компактной и четкой, поскольку она:. является простым расширением структуры данных на случай немногообразных ." моделей. Однако эта структура не дает достаточно информации для получения ''.; сведений о смежности топологических элементов. Например, при добавлении к ".! модели новой грани (рис. Д.1, а) лпя должны выяснить отношения смежности .':!х между гранями. Если добавленная грань создает новую оболочку с существую-:;.
щими гранями, необходимо определить эту оболочку и добавить ее, изменив"...'!! оболочку 5~ в структуре данных, показанной на рис. Д.1, 6. Чтобы можно было определить оболочку, образуемую гранями, необходимо иметь информацию о смежности граней. Разработано несколько подходов к описанию немногообразной топологии, в особенности информации о смежности. Наиболее значительная работа была проделана Вейлером, который ввел структуру радиальных ребер для представления немногообразных топологий 11561.
В случае многообразных твердотельных моделей информация о смежности хранится в виде двух типов циклического упо-:;,' рядочивания (то есть цикл «грань — ребро» и цикл вершина — ребро»). Цикл -.=" «грань — ребро» вЂ” это список ребер для каждой грани или кольца, а цикл «вер- .-':. '. шина — ребро» вЂ” список связанных ребер, сходящихся в заданной вершине. По.,',::: смотрев на структуру полуребер и структуру крыльевых ребер в разделе 5.3.2,:,::,:: можно убедиться, что зтм сведения о циклах хранятся прямо или косвенно.
Меь жду тем, для представления немногобразной модели общего вида необходимо .'4': задать трй тмпа циькдвв;:экпзьцевой, рздиальнйй"и:,дисковьтйт Кольцевой цикл (ряс. Д.2, а) соответствует циклу «грань — вврштннаь в многообразных твердотельных моделях. Радиальный цикл, показанный на рис. Д.2, б представляет собой цикл граней, соединенных с определенным ребром. Эта информация не является необходимой в многообразной модели, поскольку ребро всегда принад- СЭ лежит двум граням.
Однако в немногообразных моделях ребро может одновременно принадлежать более чем двум граням, и они должны быть заданы явно Дисковый цикл, изображенный на рис. Д.2, а, напоминает цикл «вершина — ребе б е роь в многообразных твердотельных моделях. Однако в немногообразных моделях вершина может иметь несколько дисковых циклов. Например, вершина г' на рис.
Д.З, а и б имеет три дисковых цикла, каждый из которых принадлежит своей оболочке. Рис. Д.2. Три типа циклов в немногообразной топологии: а — кольцевой цикл; б — радиальный цикл; в — дисковый цикл тг5 Рис. Д.З. Топологически различные модели к Р'1 [Овьедо Рис. Д.т. Представление немнопюбразной модели с помощью списков топологических элементов ! [ О колочках ! г2 гз г« ]:~Рзнчьч» ! -.! !." -=- Бт Ев Ет ез Е! дз Ет ез — — ~ ~~~~ФД Кб тэ тгз — ч ~Вершина» Представление радиальных ребер, предложенное Вейлером [156], является пер«"'." вым полным немногообразным представлением для моделирования границ,: в котором топологическая смежность представлена в явном виде. С ее помощвях;.'.
можно представить радиальный цикл и кольцевой цикл, но она не хранит в яяг:"" ном виде дисковый цикл вокруг вершины. Хотя информация о смежности у вер-.::::. шины в ограниченном числе случаев может быть получена из другой топологи;,' „' ческой информации, структура радиальных ребер не всегда позволяет полужп';-' правильную информацию такого рода из топологических данных. Более того, т4::,', пологически различные модели, изображенные на рис.
Д.З, представляются в структуре радиальных ребер одной и той же топологией. Чтобы обойти эту труд"." '' ность, в 160] было предложено вершинное представление, с помощью которогв...- можно выразить и дисковые, и радиальные, и кольцевые циклы. Здесь мы опи".. шем только представление радиальных ребер, поскольку прочие представления '-' ' можно рассматривать как его расширения.
Описания других представлеииФ.; можно найти в 1161]. Вазовыми топологическими элементами, с помощью которых представляется не",: мнопюбразная модель в структуре данных радиальных ребер, являются модель- регион, оболочка, грань, кольцо, ребро и вершина (ртис. Д.4). Модель эквивалентн(г'' .: комплексу, показанному на рис. Д.1, б, и означает просто множеспю всех задай ствованных регионов. Регион эквивалентен объему, показанному на рис. Д.1.:б ' и, таким образом, окружен одной или несколькими оболочками. Регион окружен несколькими оболочками.
когда внутри него имеются пустоты. В представленйн '.:::: радиальных ребер одиночный твердотельный объект илтеет две оболочки — одна.: ':,. внутренняя, а другая внешняя, имеющая бесконечные размеры. Оболочка — это: "' ориентированная гранпчная поверхность региона, н она имеет то же значение, что и на рис. Д.1, б. Такие топологттческие сущности, как грань, кольцо, ребро и вершина, имеют тот же смысл, что и в многообразном представлении.