Основы САПР (CAD,CAM,CAE) - (Кунву Ли)(2004) (951262), страница 25
Текст из файла (страница 25)
5.22). . 5. Объемное тело создается заметанием или вращением плоской фигуры. Толщина и угол поворота также могут стать размерными параметрами, что позволит при необходимости легко изменить созданную трехмерную форму. Обратите внимание, что форма в параметрическом моделировании изменяется не непосредственно, а через использование геометрических ограничений и размерных соотношений. Поэтому конструктор может разработать множество альтернативных проектов, не заботясь о деталях, но сосредоточившись на функциональных аспектах. Рази азновидности параметрического моделирования выделяются по методам решения уравнений, описывающих геометрические ограничения. Системы первого типа решают уравнения последовательно, а щютемы второго типа — одновременно. В первом случае форма тела зависит от порядка введения ограничений.
Во 70 Рне. Б.22. Изменение формы через ограничения Б.З.2. Структура данных В предыдущем разделе мы описали разновииюсти функций моделирования, предоставляемых системами твердотельного моделирования. Мы знаем, что при создании объемного тела с применением этих функций в компьютере сохраняет-., ся его математическое описание. Каким образом и в каких форматах хранится.:--,;::-: зта информация, отражающая однозначное математическое описание объемных тел? В этом разделе мы расскажем о структурах данных, используемых для хра.- нения математических описаний такого рода.
Структуры данных, используемые дзи описания объемных тел, обычно делятся на три типа в зависимости от того, какие тела ими описываются. Первая структура представляет собой дерево, описывающее историю применения булевских операций к примитивам.
Журнал операций называется конструктивным представлением обьемной геометрии (Сопвггисг(пе 5ойд Свотеггу — СВС гвргезвпгапоп). Дерево называется деревом С5С (С5С аггее). Вторая структура содержит сведения о границах объема (вершинах, ребрах, гранях и их соединении друг:: ':.. с другом).
Это представление называется гралшчним првдставлпшем (Ьоипдагтг гвргезвпгагюп — В-гер), а структура данных — струютгрой В-гер (В-гвр гЫа,, хоиспае). Многие структуры В-гер строятся по-разному в зависимости от того,: какой элемент считается основным при сохранении сведений о связности„"...„:::: (см. далее). Третья структура представляет объем в виде комбинации элементарных объемов (например, кубов), Можно придумать множество моделей разложения, выбирая разные элементарные объемы, но ни одна из них не может точно описать объемное тело. Дерево СВ6 Вспомните, что дерево СВС содержит историю применения булевских операций к примитивам. Рассмотрим тело, изображенное на рис.
5.23. а, Его историю булевских операций люжно представить в виде дерева так, как показано на .,'"' рис. 5.23, б. Это дерево может быть представлено взаимосвязанными элементами данных (рис. 5.23, в). Элементы данных реализуются на языке С (лис-:,';:!!~~ тинг 5 1) РчГЕЕ;-;,:;~тзввтвъьмтк/ У/ДРкДДн Етьтвф--.„~=., Р2 Рт свои указатель митивв Рис. 5.23. Пример дерева СЗО '„: тз втпкт ргтптгтче 1 тот ргтп туре ОооЫе роз к. ров у. роз и Отоше огт к. огт у.
ощ зи тото *втсп)босе: Рис. 5.24. Изменение параметров тела /* тнг, принитива */ /*полаиение зкзенппяра */ /* ориентация зкзеигляра */ /* значения размеров принитива */ "::Фюстмнг 5.1. Реализация структуры дерева С56 на языке С Втгыст орегатог 1' шт ор суре. /* оператор обьединения пересечения ипи разности */ 1 Суре. /* тил левого узла. б — оператор. 1 - принитив */ к Суре: /* тип правого узла.
0 — оператор. 1 - прииитив */ чотб *' ртг, /* левый узел */ "я рсг /* правый узел */ "р ртг, /* ролитепьскии узел */ :.' Дерево СБС обладает следующими преимутцествами: С)' структура данных проста, а их представление компактно, что облегчает обра,ботку; тй объемное тело, описываемое деревом СВС, всегда является корректным, то есть ого внутренний объем одиозна шо отделен от внешнего. Примером некорректного объемного тела является тело с лишним ребром. Для пего деление объема па внутренний и внешний вблизи вершины, к которой подходит зто ребро, оказывается неоднозначным; С) представление С5О всегда может быль преобразовано к соответствуюшсму представлению В-Вор. Это позволяет взаимодействовать с программами, ориентированными на использование В-Кср; ь) параметрическое моделирование легко реализуется изменением параметров соответствующих прпмиюшов (ртттч 5.24).
Всеь у всоси:дерева и. недостатки: -.- ):) ПОСКОЛЬКУ 'дЕ)тьтявт СЗС Храпнт ИСтОрИЮ ПрИМЕНЕНИя буЛЕВСКИХ ОНЕ)йэвпй','Ъ' '; "."", 'процессе моде/тирования могут использоваться только они. Это. трцботясзпз)~:,.,:::':-":"; жестко ограничивает диапазон моделируемых объектов. Более тоста, оно.')ая)а ' "'!:-;- ключает использование удобных функций локального изменения, таких ~/' '- поднятие и округление; гз для получения сведений о граничных поверхностях,их ребрах и связяхмехсву этими элеметтгами из дерева С5С требуются сложные вычисления. К вожак~," нию, сведения о границах нужны для множества приложений, в частйпсТ)тт для отображения тел. Для того чтобы отобразить затушеванное изобразкенце или чертеж объемного тела, нужно иметь информацию о гранях или вррз))з)! нах этого тела (см.
главу 3). Поэтому представление СВС является недостатки)ы ным для интерактивного отображения тел и манипулирования ими. Друпзй пример — расчет траектории движения фрезы с ЧПУ для обработки поверхностей тела. Ддя этой задачи нужны сведения о поверхностях, их ребрах и связности. Получить все эти сведения из дерева СЯС очень непросто.
Из-за этих недостатков разработчики программ, основанных на представлении СВО, стараются добавить соответствующие сведения о границах. Такое комбинированное математическое представление называется гибридным и требует поддержания согласованности между двумя структурами данных. Струвстуре данных В-Вер Границы объемных тел состоят из элементарных геометрических обьектов: вер-. ":",';:: шин, ребер и граней'. В структуре данных В-Вер хранятся все эти элементы вме'. ';:; ~ сте со сведениями о том, как они соединены друг с другом. Одна иэ простейших структур данных, если не самая простая, приведена в табл.
5.1. Структура дать-:,: ~,'": ных представляет объемное тело, изображенное на рис. 5.25. В таблице граней хранится список ограничивающих ребер для каждой грани. Последовательность .',:::,5 ребер для каждой грани дается обходом против часовой стрелки, если смотреть,': -',';:;", Грань — часть граничной поверхности, граница которой состоит из криволинейных сет '.;;"!;-',:;." лтентов, при пересечении которых происходит существенное изменение вектора нормали к поверхности.
Крнволипейттые сегменты, ограничивающие грань, называются ребрами,':а!:.'-;.'";;-'."т: Точки, в которых встречаются соседние ребра, называютси вершинами. ' Уравнения позер скнмн данными, т топологнческнми наны либо как гео зтй ~г"; йтсйаруж)т -;Збгйгхйгафпхомучторебра4йшф~йквглдсбяапин; йыахте с Йажс 'Дпй, ГРШПЯзР' Срткрауузивхам .ИНфОРМВЩШ: О тоы,:'Сз 'йаКОй 'ЕИ~РОНЫ От',.НЕЕ НаХЮДптол вйутг ~й(йище объеът тема..Другими словами, имен 'сведения о гранях', вы можете 'оцредеглитть где расположена конкретная точка: снаружи или внутри тела Вер-цпзгты, ребра и грани.
изображенные на рнс. 5.25, нумеруются системой геомет"рйсяеского моделирования в произвольном порядке в момент сохранения сведе: ний иэ табл. 5ЛЕ .::, Твбпмцд БЛ. Три таблицы представления 6-кер Рис. 5.25. Объемное тело, сохраняемое в табл. бд ., В каждой строке таблицы ребер хранятся вершины, находящиеся на концах соответствующего ребра, а в строках таблицы вершин хранятся координаты всех вершин. Этн координаты обычно определяются в модельной системе координат, связанной с данным телом. Если убрать отсюда таблицу граней, эту структуру данных можно будет использовать для хранения форм, созданных в системах каркасного молелирования.
Структура данных для каркасной модели может ис' 'пользоваться в качестве базовой для систем автоматизированной разработки чертежей, если допустить указание двумерных координат для точек. Структура данных В-Ввр выглядит'очень прв1той и комзпактнгойь Одупактт ~~:::,"-.'-:.;::,;.";,': попользуется в развитых системах твердотельного моделнроватгия; нз,'за:: пй~~в';-','.;- численных ниже недостатков.
д Структура данных В-йер ориентирована на хранение плоских мнбгогрдцйй",,:;"! ков. Если потребуется сохранить данные о теле с криволинейнымизграцувц)(;,',,';,",', и ребрами, строки таблиц граней и ребер придется изменять таким',обрдз~Щ'!'.-''," чтобы в пих можно было включить уравнения поверхности и кривой Собтэ~1з'-'.: ственно'. Уравнения для плоских граней сохранять не обязательно, посколь'';"„",':,:,, ку плоские грани определяются находяшимися на них верпшнами, с1 Грань с внутренними и внешними границами (рис. 5.26, а) не может.бьщ ='-',*',".: сохранена в таблице граней, поскольку для нее нужно два списка ребер',вакф'',';:;:; сто одного.