Логические операции с полигональными объектами.




Логические операции с объектами. Модификатор Boolean.

Есть такой раздел математики - алгебра логики, в котором изучают логические операции над множествами (или высказываниями). Все логические операции перечислять не буду, тем более в Blender используется только три из них: Объединение, Пересечение и Вычитание (Разность).

Например: A U B = C - логическая операция объединения (U) 2-х множеств А и B дает множество C.

Если полигональный объект считать одним множеством (точек пространства), а другой - другим множеством, то логическая операция между ними и будет называться булевой операцией.

Логические (Булевы) операции на полигональными объектами осуществляются с помощью модификатора Boolean. Модификатор применяется к одному объекту (как правило, тому из которого будут вычитать. Для операций объединения или пересечения это не принципиально), а второй указывается в настройках модификатора Boolean в качестве объекта (параметр Object).

У модификатора 3 режима:

Intersect - пересечение, результатом операции будет объект, пространство (объём) которого принадлежит и первому и второму объекту одновременно. Это логическая операция И, или логическое умножение, если что!

Union - объединение, союз. Результатом операции будет объект, пространство (объём) которого содержит пространство первого и второго объектов. Объемы тел как бы складываются. Это логическая операция ИЛИ, или логическое сложение.

Difference - разность, вычитание. Результатом операции будет объект, пространство (объём) которого содержит пространство первого объекта за вычетом (исключая) объем второго объекта. Объемы тел как бы вычитаются. Это логическая операция ИЛИ НЕТ, или логическое вычитание.

Параметр Overlap Treshold - максимальное расстояние между двумя гранями, при котором они пересекаются.

Например, добавляем в сцену к уже имеющемуся там кубу объект Цилиндр, настраиваем его размеры так, чтобы его диаметр был меньше длины стороны куба, а высота, наоборот, больше. Таким образом, цилиндр как бы протыкает куб насквозь, выходя наружу сверху и снизу куба. Теперь применяем к кубу (объект 1) модификатор Boolean, в настройках которого указываем в качестве Object наш цилиндр (объект 2). Выбираем режим Difference (он уже выбран по умолчанию).
Странно! Ничего не происходит!?!

Это потому что сам цилиндр остается видимым и закрывает собой то отверстие, которое сделал модификатор. Не верите? Отключите видимость цилиндра в окне Outliner (список объектов в сцене), и получите результат вашей первой булевой операции.

Для того чтобы отключить видимость цилиндра для рендера, нужно будет настроить фильтр отображения в окне Outliner (значок воронки), включить отображение в окне Outliner параметра Disable in Renders (значок фотоаппарата) и отключить этот значок для цилиндра. Для возможности управления (перемещение, изменение размеров) цилиндром лучше настроить его отображение в окне вьюпорта (см. рис. справа), и вернуть его отображение (значок глаза) в списке Outliner. Тогда наш цилиндр будет отображаться в окне 3D viewport как решетка, не закрывать отверстия, созданные булевым модификатором, и при этом выделяться и перемещаться в сцене. Попробуйте, и вы почувствуете всю силу логических операций при моделировании!

Итак, вот стандартная последовательность действий для одной булевой операции:

· Выделяем объект из которого будем вычитать (вырезать)

· Применяем к нему модификатор Boolean

· В настройка параметров модификатора указываем второй объект для нашей логической операции (выбираем из раскрывающегося списка после щелчка в строке Object, либо с помощью пипетки указываем в окне Outliner или 3D Viewport)

· Выбираем один из 3-х вариантов логической операции: Intersect (пересечение), Union (объединение) или Difference (разность, вычитание)

· Отключаем видимость второго объекта для визуализации для рендера.

· Настраиваем его отображение в окне вьюпорта как Wire (решетка).

Если вам кажется, что действий слишком много для одной логической операции, то пожалуй соглашусь, и далее расскажу как это всё сделать с помощью одного нажатия комбинации 2-х клавиш.

Add-on Bool Tool.

Чтобы упростить себе жизнь с булевыми операциями включим один Addon (дополнение, можно сказать "плагин"), который уже установлен вместе с Blender, но не включен, т.е. не активен.

1) Заходим в Preference, вкладка Add-ons,

2) набираем в строке поиска "bool",

3) включаем (установкой галочки) найденный аддон Object: Bool Tool

 

Теперь для выполнения всех операций, от добавления модификатора до отключений для рендера и настройки видимости в окне перспективы нужно лишь выбрать одну из 3-х комбинаций клавиш:

· Ctrl+ "-" (минус на Numpad) - для операции вычитания (Difference);

· Ctrl+ "+" (плюс на Numpad) - для операции объединения (Union);

· Ctrl+ "*" (звездочка на Numpad) - для операции пересечения (Intersect);

Теперь за вас всё сделает аддон, нужно лишь правильно выделить два объекта перед применением сочетания клавиш. Последним нужно выделять первый объект, тот из которого будем вычитать, т.е. тот который останется видимым в окне вьюпорта и для рендера.

Подсказка: При правильной последовательности выделения последний объект подсвечивается светлее, потому что он становится "активным", именно к нему будет применен модификатор, а другой объект будет "скрыт от глаз" и от рендера. Если это не так - щелкните по нему еще раз, удерживая клавишу Shift - он станет подсвечиваться более светлым (ближе к жёлтому) цветом, остальные - ближе к красному. Теперь, когда объекты выделены правильно, можете нажимать Ctrl+"-" или Ctrl+"+" или Ctrl+"*".

Теперь вы вооружены таким мощным инструментом как Boolean. Немного практики - и можно переходить к неразрушающему (недеструктивному) моделированию - целому направлению в моделировании HardSurface (твердотельных объектов), схожему с параметрическим моделированием, но с большим разнообразием форм.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-12-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: