Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Руководство. Трёхмерное моделирование T-FLEX.pdf
Скачиваний:
556
Добавлен:
23.02.2016
Размер:
31.96 Mб
Скачать

Трёхмерное моделирование

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

Глобальные и локальные булевы операции

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

Помимо “Глобальной” булевой операцией в T-FLEX есть понятие “Локальной” булевой операции. В отличие от “Глобальной” булевой операции, где в качестве операндов выбираются только тела, в “Локальной” булевой операции помимо тел выбираются грани операндов. Выбрать грани операндов можно в параметрах операции на закладке “Грани”. В некоторых случаях использование “Локальной” булевой операции дает значительный выигрыш во времени регенерации модели по сравнению с “Глобальной” булевой операцией, т.к. в результате выполнения операции будут искаться пересечения только указанных граней. Например, если нужно проделать отверстие в достаточно сложном теле и

272

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

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

Следует заметить, что нужно внимательно выбирать грани для “Локальной” булевой операции. В случае неправильно выбранных граней может сформироваться некорректное тело.

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

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

273

Трёхмерное моделирование

Выборочные булевы операции

В результате пересечения граней операндов образуются общие рёбра. Эти рёбра разделяют тела операндов на части. Части операндов могут быть внутренними (общие части операндов) и наружными. При создании булевой операции есть возможность указать наружные части операндов, которые будут оставлены в результирующем теле или наоборот исключены из него.

Часть операнда определяется топологическими элементами: вершинами, рёбрами или гранями. Для выбора части операнда достаточно указать в параметрах операции на закладке “Части операндов” один из этих элементов. На рисунке ниже показана возможность применения выборочной булевой операции “Сложение”, при выполнении которой в результирующем теле остаются только выбранные части второго операнда.

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

274

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

этой грани и при помощи опции “Выбор точки” выбрать этот 3D узел. При этом грань выбирать не нужно.

Задание соответствий элементов

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

Эта возможность позволяет:

1. Ускорить процесс пересчета булевой операции за счет того, что указан конкретный тип контакта.

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

Вкоманде предусмотрены четыре типа соответствия:

Полное совпадение – границы топологических элементов совпадают с заданной точностью.

Включение – границы второго элемента лежат в пределах границ первого элемента.

Частичное совпадение – границы одного элемента частично совпадают с границами другого элемента.

Проецирование – совпадение отпечатков границ топологических элементов.

В таблице ниже представлено описание типов соответствия для различной топологии операндов:

Соответствие

 

 

 

 

Тип

Полное совпадение

Включение

Частичное совпадение

Проецирование

контакта

 

 

 

 

 

 

 

 

 

Вершина

 

 

 

Совпадение

вершин

Вершина

операндов при

 

 

 

 

 

 

 

проецировании

 

 

 

 

 

Ребро

Кривые ребер

Кривые ребер

 

Совпадение

совпадают с заданной

совпадают с заданной

Ребро

точностью.

ребер операндов

точностью.

 

при

 

Соответствующие

 

 

 

 

проецировании

275

Трёхмерное моделирование

 

вершины ребер

Границы второго ребра

 

проецировании

 

совпадают с заданной

лежат полностью в

 

 

 

точностью.

пределах первого ребра

 

 

 

 

 

 

 

 

 

Кривая ребра совпадает

Кривая ребра совпадает

 

 

 

с поверхностью грани с

 

Грань

 

с поверхностью грани с

 

заданной точностью.

заданной точностью.

Ребро

Ребро лежит

 

Ребро может пересекать

 

 

 

полностью в пределах

 

 

 

границы (ребра) грани.

 

 

 

грани.

 

 

 

 

 

 

 

 

 

 

 

Поверхности граней

Поверхности граней

 

 

 

совпадают с заданной

Поверхности граней

 

 

совпадают с заданной

 

 

точностью. Вторая

 

 

точностью. Каждое

совпадают с заданной

 

 

грань лежит в передах

 

Грань

ребро первой грани

точностью. Границы

 

первой грани. Ни одно

соответствует ребру

одной грани могут

Грань

ребро второй грани не

второй грани.

пересекать границы

 

 

пересекает границ

 

 

Совпадение ребер

другой грани. Ребра

 

 

первой грани. Хотя

 

 

может быть не

граней могут совпадать.

 

 

ребра граней могут

 

 

точным.

 

 

 

совпадать.

 

 

 

 

 

 

 

 

 

 

 

276

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

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

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

Сглаживание новых рёбер

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

Отсутствие одного из операндов

При создании булевой операции можно установить параметр “Допускается возможность отсутствия одной из исходных операций”. Этот прием часто применяется в параметрических моделях, когда для определённого исполнения модели нужно исключить один из элементов. Как показано на рисунке ниже гайка может иметь два исполнения: с проточкой и без неё. Для того чтобы реализовать эти исполнения в одной модели можно подавить второй операнд при этом будут сохранены все

277