
2.3. Логические операции Boolean
К логическим операциям относятся объединение, разница и пересечение. В операциях всегда используются только два объекта, их называют операндами {операнд А и операнд В).
Имеется несколько ограничений для применения Boolean.
Для этой операции подходят только объекты с замкнутой поверхностью (например, плоскость или чайник не подойдут).
Объекты должны пересекаться.
Необходимы булевские операции для того, чтобы вырезать из одного объекта отверстие формой второго объекта. Например, нам нужно смоделировать обычную пуговицу с двумя отверстиями для пришивания.
Последовательность применения:
1. Создать два объекта.
2. Выделить один из них (операнд А).
3. Вызывать команду Boolean.
4. Щелкнуть по кнопке Pick Operand В.
5. Щелкнуть по второму объекту в любом видовом окне.
6. Щелкнуть правой кнопкой мыши в активном видовом окне (это для того, чтобы завершить команду).
Режимы Boolean:
Union (Сложение);
Intersection (Пересечение);
Subtraction (A-B) (Вычитание из главного объекта), по умолчанию;
Subtraction (B-A) (Вычитание наоборот);
Cut (Разрез), используется для работы с полигональной сеткой.
Пример использования Boolean
Создайте Box и Sphere произвольных размеров и расположите их так, чтобы сфера пересекалась с боксом. Выделите Box.
На вкладке Create (Создание) откройте выпадающий список и выберите там Compound Objects (Объекты компоновки).
Нажмите кнопку Boolean.
В открывшемся свитке Pick Boolean щелкните по кнопке Pick Operand В (она станет желтой).
В окне перспективного вида щелкните по сфере, она исчезнет. Щелкните правой кнопкой мыши для завершения операции. Булевский объект готов.
По умолчанию включен режим вычитания операндов А-В. При необходимости можно выбрать другой режим. Для этого в свитке Parameters есть раздел Operation.
Попробуйте переключать режимы и следите за результатом.
Когда булевский объект готов, есть возможность воздействовать на операнды. Выделите булевский объект и зайдите на вкладку Modify. Обратите внимание, что в стеке модификаторов объект стал называться Boolean.
Чтобы изменить параметры одного из операндов, нужно выделить этот операнд в разделе Operands свитка Parameters. Тогда в стеке модификаторов ниже Boolean появится Box. Щелкнув по слову Box, вы увидите свиток параметров бокса.
Чтобы подвинуть или повернуть один из операндов, нужно зайти на уровень подобъектов. Для этого щелкните по плюсу слева от слова Boolean. В развернувшемся списке щелкните по слову Operands (оно станет желтым). Теперь, взяв инструмент перемещения, вы сможете двигать только операнд Box относительно Sphere. После завершения действий с операндом выключитесь из уровня подобъектов. Аналогичным образом можно воздействовать на второй операнд.
Если с объектом выполнялась булевская операция несколько раз (как, например, в следующем примере с пуговицей), то в стеке будет находиться последовательность этих операций. Чтобы добраться до нужного операнда, нужно поочередно развертывать все Boolean.
Boolean очень капризная операция, поэтому если при вырезании какая-то часть поверхности стала не видна, нужно просто подвигать любой из операндов. Тогда 3ds max изменит разбиение, и поверхность станет видимой.
Булевскую операцию отменить нельзя, т. е. ее не выбросишь в корзину, как модификатор. Но операнды извлечь можно. Для этого в свитке Parameters выделяете операнд, который хотите извлечь, и нажимаете кнопку Extract Operand. В сцене появится еще один объект, находящийся на месте операнда. Просто отодвиньте его в сторону. По умолчанию операнд извлекается как Instance, но можно извлечь и как Сору, установив переключатель под кнопкой в соответствующее положение.
Свиток Display /Update содержит опции отображения и обновления булевского объекта в видовых окнах. Полезной является опция Result + Hidden Ops, позволяющая увидеть скрытый операнд в виде сетки.