Фильтр соединений

From FreeCAD Documentation
Revision as of 18:15, 31 October 2020 by Baritone (talk | contribs) (Created page with "# Выбрать нарезаемый объект # Применить {{MenuCommand|Меню → Деталь → Соединенить → Фильтр соединени...")

Part Compound‏‎Filter

Системное название
Part Compound‏‎Filter
Расположение в меню
Деталь → Фильтр соединений
Верстаки
Part
Быстрые клавиши
Нет
Представлено в версии
0.17
См. также
Нет

Описание

CompoundFilter можно использовать для извлечения отдельных частей результата операции вроде Part Slice, с помощью которой вы разбили объект.

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

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

Использование

  1. Выбрать нарезаемый объект
  2. Применить Меню → Деталь → Соединенить → Фильтр соединений
  3. Выберите CompoundFilterObject в древе проекта
  4. На вкладке свойств установите "Filter Type" на "specific items"
  5. Заенсите в свойство "items" элементы, которые вы хотите извлечь
    1. Для цельного куска это число, начинающееся с 0, т.е. если вы хотите извлечь первый элемент, введите 0 в это поле, 1 для следующего элемента ...
    2. Если вы хотите извлечь более одного фрагмента за раз, разделите числа знаком ";", например значение «0;2» извлечет первый и третий элементы
    3. Общий случай, который также охватывает упомянутые выше возможности, представляет собой список диапазонов индексов, указанных в нотации 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, ...
      • :;: дважды повторить введенное соединение
  6. Если вы хотите извлечь другой кусок, снова выберите нарезанный объект. Теперь он находится под CompoundFilter в дереве.
  7. Повторите процедуру выбора, описанную выше. Срез и его подэлементы будут отображаться в обоих CompoundFilters; разумеется, они не повторяются в модели. Самый быстрый способ извлечь другой фрагмент - скопировать CompoundFilter. Но будьте осторожны: вас спросят, хотите ли вы скопировать также элементы из CompoundFilter, на что вы должны ответить «нет», вы не хотите их копировать, вы только ссылаетесь на них.

Свойства

  • ДанныеBase: Object to be filtered.
  • ДанныеFilter Type selectable options:
    • bypass; no filter. The original compound is output, unchanged.
    • specific items; extract the items listed in the "items" property
    • collision-pass; extract pieces that touch or intersect with 'Stencil' shape.
    • window-volume (default); extract all pieces which have a volume between "Window From" and "Window To" where 100% is the biggest piece - and not the unsliced object. The value of 100% is a reference value which can be overridden by "OverrideMaxVal".
    • window-area; the same as window-volume where the sliced area determines the selection instead of the volume.
    • window-length; the same as window-volume where the length of the edges determines the selection instead of the volume.
    • window-distance; extract children whose distance to 'Stencil' shape is within value window, defined by properties "WindowFrom", "WindowTo", "OverrideMaxVal".
  • ДанныеInvert: If set to true the list as described above is excluded instead of included.
  • ДанныеOverride Max Val: Value window range is defined in percentages of maximum value. The maximum value is computed according to the following set of rules:
    • if 'OverrideMaxVal' is nonzero - use it.
    • otherwise, if 'Stencil' link is supplied - calculate the corresponding value of stencil shape (not applicable to window-distance 'FilterType')
    • otherwise, take maximum value from children in compound to be filtered.
  • ДанныеStencil: Link to a stencil shape. For collision-pass and window-distance FilterType's, stencil is the object to test collision/distance against. For other "window-***" filter types, stencil is used to provide reference value for window percentages (maximum value override). In all other modes, 'Stencil' is ignored.
  • ДанныеWindow From: Upper threshold percentage for selecting pieces, 100% is relative to the biggest piece.
  • ДанныеWindow To: Lower threshold percentage for selecting pieces, 100% is relative to the biggest piece.
  • Данныеitems: List or range of elements to be selected if Filter Type is "specific items".

Примечания