|
Расположение в меню |
---|
Деталь → Соединить Группировка → Фильтр соединений |
Верстаки |
Деталь |
Быстрые клавиши |
Нет |
Представлено в версии |
0.17 |
См. также |
Нет |
Описание
Фильтр Компонентов Группы можно использовать для извлечения отдельных частей результата, например, операции Разрезать и сгруппировать, с помощью которой вы разделили объект.
Он может извлекать дочерние элементы по их индексам, проверять дочерние элементы на столкновение с формой трафарета и фильтровать дочерние элементы по их свойствам, таким как длина, площадь, объем.
Если в результате есть только один дочерний элемент, результатом будет этот элемент. Если дочерних элементов в результате больше одного, то результатом будет новый составной элемент (группа).
Применение
- Выберите нарезанный объект
- Примените Деталь → Соединить Группировка → Фильтр соединений (компонентов группы)
- Выберите объект CompoundFilter в дереве.
- На вкладке свойств установите для параметра «Filter Type - Тип фильтра» значение «specific items -
определенные элементы».
- Задайте в качестве элементов те элементы, которые вы хотите извлечь.
- Для одного элемента это число, начинающееся с 0, т.е. если вы хотите извлечь первый элемент, введите 0 в это поле, 1 для следующего элемента и так далее...
- Если вы хотите извлечь более одного элемента за раз, разделите числа символом «;», например, значение «0;2» извлечет первый и третий элемент.
- Общий случай - который также охватывает вышеупомянутые возможности - представляет собой список диапазонов индексов, заданных в нотации Python, но без скобок. Диапазоны можно объединять точкой с запятой. Например:
- 7:10 оставляет дочерние элементы индексов 7, 8 и 9 (индексы отсчитываются от нуля; индекс диапазона до исключается).
- 1;2 оставляет элементы 1 и 2 (первый диапазон - дочерний 1, второй диапазон - дочерний 2, диапазоны соединяются точкой с запятой)
- 0;-1 взять первый дочерний элемент (индекс 0) и последний (индекс -1 означает последний дочерний элемент, -2 - один перед последним и так далее)
- 1: взять все, кроме первого дочернего элемента (отсутствие индекса означает «полностью до конца»).
- ::-1 взять все дочерние элементоы в обратном порядке
- ::2 взять все дочерние элементы с нечётным индексом, то есть индексы, 1,3,5, ..., которые являются элементами 2,4,6, ...
- :;: дважды повторить введённое соединение
- Если вы хотите извлечь еще один фрагмент, снова выберите нарезанный объект. Теперь он находится под CompoundFilter в дереве.
- Повторите процедуру выделения, описанную выше. Срез и его подэлементы будут отображены под обоими CompoundFilter; они, конечно, не повторяются в модели. Очень быстрый способ извлечь еще один фрагмент - скопировать CompoundFilter. Но будьте внимательны: вас спросят, хотите ли вы скопировать элементы под CompoundFilter, на что вы должны ответить нет, вы же не хотите их копировать, вы только ссылаетесь на них.
Свойства
- ДанныеБаза: фильтруемый объект.
- Варианты выбора ДанныеFilter Type - типа фильтра:
- bypass (игнорировать): нет фильтра. Исходное соединение выводится без изменений.
- specific items (определённые элементы): извлекаются элементы, перечисленные в свойстве "items"
- collision-pass (столкновение): извлекаются части, которые касаются или пересекаются с формой 'Stencil (трафарет)'.
- window-volume (объём - по умолчанию): извлекаются все части, которые имеют объем между «Window From (Объём От)» и «Window To (Объём До)», где 100% - самый большой элемент, а не неразрезанный исходный объект. Значение 100% является эталонным значением, которое можно переопределить с помощью «Override Max Val» - «Переопределить максимальное значение».
- window-area (площадь): то же, что и window-volume, но где вместо объёма выделения определяется нарезанная площадь сечений, а не объем.
- window-length (длина): то же, что и window-volume, но где вместо объёма выделения определяется длина краёв.
- window-distance (расстояние); извлекаются дочерние элементы, расстояние которых до формой 'Stencil (трафарет)' находится в пределах диапазона значений, определяемого свойствами «Window From (От)», «Window To (До)», «Override Max Val (Переопределить максимальное значение)».
- ДанныеInvert (инвертировать): если установлено значение true, список элементов, как описано выше, исключается, а не включается.
- ДанныеOverride Max Val (Переопределить максимальное значение): диапазон значений определяется в процентах от максимального значения. Максимальное значение вычисляется в соответствии со следующим набором правил:
- если OverrideMaxVal отличен от нуля - используется оно.
- в противном случае, если указана ссылка на 'Stencil (трафарет)' - вычисляется соответствующее значение формы трафарета (не применимо к расстоянию между окнами 'FilterType')
- в противном случае берётся максимальное значение от дочерних элементов в группе для фильтрации.
- ДанныеStencil (трафарет): ссылка на фигуру трафарета. Для Collision-Pass и Window-Distance FilterType stencil - это объект, с которым нужно проверить столкновение/расстояние. Для других типов фильтров «window-***» трафарет используется для предоставления справочного значения для процентных значений окна (переопределение максимального значения). Во всех остальных режимах «Stencil» игнорируется.
- ДанныеWindow From (От): процент верхнего порога для выбора частей, 100% относительно самой большой части.
- ДанныеWindow To (До): процент нижнего порога для выбора частей, 100% относительно самой большой части.
- Данныеitems (элементы): список или диапазон элементов, которые нужно выбрать, если тип фильтра - «specific items (определённые элементы)».
Эта страница получена от https://wiki.freecad.org/Part_CompoundFilter