qweqweqe123123

Функции моделирования

Функции моделирования, поддерживаемые большинством систем твердотельного моделирования, могут быть разделены на пять основных групп. В первую группу входят функции, используемые для создания простых форм на основе объемных заготовок, имеющихся в программе, — так называемые функции создания примитивов (primitive creation functions). К этой же группе относятся функции добавления и вычитания объема — булевские операторы (Boolean operations). Функции моделирования из первой группы позволяют проектировщику быстро создать форму, близкую к окончательной форме детали, подобно тому как ребенок сминает пластилин и создает из него приблизительную физическую модель.

Ко второй группе относятся функции создания объемных тел путем перемещения поверхности. Функция заметания (sweeping) позволяет создавать объемное тело трансляцией или вращением области, заданной на плоскости. Построение тела вращения из плоской кривой называется также качанием или вращательным заметанием (swinging). Задавая замкнутую плоскую область, пользователь может указывать геометрические ограничения или вводить данные о размерах, а не рисовать форму вручную. Здесь под геометрическими ограничениями понимаются соотношения между элементами рисунка (перпендикулярность отрезков, касание дуги окружности отрезком и т. д.). В этом случае система построит точную форму, удовлетворяющую ограничениям, самостоятельно. Изменение геометрических ограничений или размеров даст другую плоскую область и другое объемное тело. Такой подход называется параметрическим моделированием, поскольку изменение параметров позволяет получить разные объекты. Параметрами могут быть постоянные, входящие в геометрические ограничения, а также размеры. Функция скиннинга (skinning) создает объемное тело, натягивая поверхность на заданные поперечные сечения. Функции второй группы позволяют проектировщику начать моделирование с формы, весьма близкой к конечному результату, поскольку одних поперечных сечений вполне достаточно для точного описания конечного объемного тела.

В третью группу входят функции моделирования, предназначенные главным образом для изменения существующей формы. Типичными примерами являются функции скругления или плавного сопряжения (rounding, blending) и поднятия (lifting). К четвертой группе относятся функции, позволяющие непосредственно манипулировать составляющими объемных тел, то есть вершинами, ребрами и гранями. Работа с этими функциями (аналогичными функциям систем поверхностного моделирования) называется моделированием границ (boundary modeling). В последнюю группу входят функции, используя которые проектировщик может моделировать твердое тело при помощи свободных форм. Например, он может давать системе команды типа «сделать отверстие такого-то размера в таком-то месте» или «сделать фаску такого-то размера в таком-то месте». Работа с такими функциями называется объектно-ориентированным моделированием (feature-based modeling). В последнее время функциям пятой группы уделяется особое внимание, поскольку модель, построенная с их помощью, содержит информацию о процессе создания, без которой невозможно автоматическое формирование плана технологического процесса для детали. Заметьте, что модель, созданная другими средствами, содержит только элементарные геометрические сведения о вершинах, ребрах и гранях.

 

Функции создания примитивов

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

 

Булевские операции

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

<strong><strong>Функции моделирования</strong></strong>

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

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

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

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

<strong><strong>Функции моделирования</strong></strong>

 

Заметание

Функция заметания (sweeping) формирует объемное тело трансляцией или вращением замкнутой плоской фигуры. В первом случае процесс формирования называется заметанием при трансляции (translational sweeping), во втором случае - построением фигуры вращения (swinging, rotational sweeping). Если плоская игура будет незамкнутой, в результате заметания получится не объемное тело, поверхность. Такой вариант заметания поддерживается системами поверхностно моделирования.

Заметание при трансляции и вращении представлено на рис. 5.9 и 5.10 соответственно. Хотя рис. 5.10 демонстрирует вращение на 360°, большинство систем твердотельного моделирования позволяют поворачивать фигуру на произвольный угол.

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

 

Скиннинг

Функция скиннинга (skinning) формирует замкнутый объем, натягивая поверхность на заданные плоские поперечные сечения тела (рис. 5.11). Можно представить себе, что на каркас фигуры, образованный границами поперечных сечений, натягивается ткань или винил. Если к натянутой поверхности не добавить конечные грани (два крайних сечения), в результате получится поверхность, а не замкнутый объем. В таком варианте функция скиннинга представлена в системах поверхностного моделирования.

<strong><strong>Функции моделирования</strong></strong>

 

Скругление или плавное сопряжение

Скругление (rounding), или плавное сопряжение (blending), используется для модифицирования существующей модели, состоящего в замене острого ребра или вершины гладкой криволинейной поверхностью, векторы нормали к которой непрерывно продолжают векторы нормали поверхностей, сходившихся у исходного ребра или вершины. Замену острого прямого ребра цилиндрической поверхностью демонстрирует рис. 5.12, а. Векторы нормали к цилиндрической поверхности продолжаются векторами соседних плоских граней. Замена острой вершины сферической поверхностью показана на рис. 5.13. Здесь также обеспечивается непрерывность векторов нормали. Частный случай скругления с добавлением, а не удалением материала показан на рис. 5.12, б. Такая процедура называется выкружкой (filleting).

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

 

Поднятие

Поднятием (lifting) называется перемещение всей грани объемного тела или ее части в заданном направлении с одновременным удлинением тела в этом направлении (рис. 5.14, а). Если нужно поднять только часть грани (рис. 5.14, б), эту грань необходимо заранее разделить. Для этого достаточно добавить ребро, которое будет разбивать грань на нужные части. Но внутри системы при этом будут произведены некоторые дополнительные действия, результатом которых станет деление грани. Обычно при этом обновляются сведения о связности поверхности. Внутри системы подобные действия выполняются при помощи операторов Эйлера, о которых речь пойдет в разделе 5.3.3.

<strong><strong>Функции моделирования</strong></strong>

При работе с функцией поднятия необходимо правильно указывать направление и дальность поднятия, чтобы добавленная часть тела не пересекалась с исходной (рис. 5.15). Пересечение не вызовет проблем, если функция поднятая реализова- на так, что при пересечении выполняется объединение добавленной части с исходным телом. Однако изначально функция поднятия разрабатывалась для небольших местных изменений, поэтому ситуация, показанная на рис. 5.15, дает некорректное объемное тело.

<strong><strong>Функции моделирования</strong></strong>

 

Моделирование границ

Функции моделирования границ используются для добавления, удаления и изменения элементов объемного тела — его вершин, ребер и граней. Следовательно, процедура, использующая функции моделирования границ, будет выглядеть точно так же, как в системах поверхностного моделирования. Другими словами, вначале создаются точки, затем создаются ребра, соединяющие эти точки, и наконец, граничные ребра определяют поверхность. Однако в системах твердотельного моделирования, в отличие от систем поверхностного моделирования, нужно определить все поверхности таким образом, чтобы образовался замкнутый объем. Создание клина при помощи функций моделирования границ иллюстрирует рис. 5.16. Процедура включает создание точек, граней и поверхностей.

<strong><strong>Функции моделирования</strong></strong>

Создавать объемное тело исключительно при помощи функций моделирования границ очень утомительно. Эти функции используются главным образом для создания плоских фигур, которые затем служат сечениями объемным телам, образуемым заметанием или спиннингом. Однако функции моделирования границ удобно применять для изменения формы уже существующего тела. Вершину можно передвинуть в новое положение, изменив соответствующим образом соседние ребра и грани (рис. 5.17). Прямое ребро можно заменить кривлоиней- ным, в результате чего изменятся связанные грани и вершины (рис. 5.18). Плоскую поверхность можно заменить на криволинейную с модификацией ребер и вершин (рис. 5.19). Иногда плоскую поверхность можно заменять криволинейной, импортированной из системы поверхностного моделирования. Перечисленные функции моделирования называются функциями тонкого редактирования (tweaking functions). Они используются для моделирования тел, ограниченных криволинейными поверхностями, поскольку такие поверхности легко получать из плоских граней многогранника.

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

 

Объектно-ориентированное моделирование

Объектно-ориентированное моделирование (feature-based modeling) позволяет инструктору создавать объемные тела, используя привычные элементы форм Jeatuies). Созданное тело несет в себе информацию об этих элементах в дополнение к информации об обычных геометрических элементах (вершинах, ребрах, гранях и др.). Например, конструктор может давать команды типа «сделать отверстие такого-то размера в таком-то месте» или «сделать фаску такого-то размера в таком-то месте», и получившаяся фигура будет содержать сведения о наличии в конкретном месте отверстия (или фаски) конкретного размера. Набор досту иных в конкретной программе элементов формы зависит от спектра приме- нения этой программы.

Большинсгвом систем объектно-ориентированного моделирования поддержива- ются такие элементы, которые используются при изготовлении деталей: фаски, отверстия, скругления, пазы, выемки и т. д. Такие элементы называются производственными, поскольку каждый из них может быть получен в результате конкретного процесса производства. Например, отверстие создается сверлением, а выемка - фрезерованием. Следовательно, на основании сведений о наличии, размере и расположении производственных элементов можно попытаться автоматически сформировать план технологического процесса. Автоматическое планирование технологического процесса, если оно будет разработано на практическом уровне, перебросит мост между CAD и CAM, которые в настоящий момент существуют отдельно друг от друга. Таким образом, в настоящий момент лучше моделировать объекты, подобные изображенному на рис. 5.20, с использованием команд объектно-ориентированного моделирования «Выемка» и «Отверстие», а не просто булевских операций. Модель, созданная при помощи таких команд, облегчит планирование технологического процесса, если не сделает его полностью автоматическим. Использование производственных элементов в моделировании иллюстрирует рис. 5.21.

<strong><strong>Функции моделирования</strong></strong>

<strong><strong>Функции моделирования</strong></strong>

Один из недостатков объектно-ориентированного моделирования заключается в том, что система не может предоставить все элементы, нужные для всех возможных приложений. Для каждой задачи может потребоваться свой набор элементов. Чтобы исключить этот недостаток, большинство систем объектно-ориентированного моделирования поддерживают какой-либо язык, на котором пользователь при необходимости может определять свои собственные элементы. После определения элемента необходимо задать параметры, указывающие его размер. Элементы, как и примитивы, могут быть разного размера а задаются размеры параметрами в момент создания элемента Создание элементов разного размера путем присваивания различных значений соответствующим параметрам является разновидностью параметрического моделирования.

 

Параметрическое моделирование

Параметрическое моделирование (parametric modeling) заключается в том, что конструктор определяет форму заданием геометрических ограничений и некоторых размерных параметров. Геометрические ограничения описывают отношения геометрических элементов. Примерами ограничений являются параллельность двух граней, компланарность двух ребер, касательность криволинейного ребра к соседнему прямому и т. д. К размерным данным относятся не только заданные размеры формы, но и соотношения между размерами. Соотношения записываются конструктором в виде математических уравнений. Таким образом, параметрическое моделирование заключается в построении формы путем решения уравнений, выражающих геометрические ограничения, и уравнений, описывающих заданные размеры и соотношения между ними.

В параметрическом моделировании построение формы обычно осуществляется в приведенной ниже последовательности.

    1.  Строится грубый набросок плоской фигуры.

2. В интерактивном режиме вводятся геометрические ограничения и данные о размерах.

3. Строится плоская фигура, отвечающая ограничениям и требованиям к размерам.

4. Шаги 2 и 3 повторяются с изменением ограничений или размеров до тех пор, пока не будет получена нужная модель (рис. 5.22).

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

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

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

<strong><strong>Функции моделирования</strong></strong>

Смотрите также