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

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

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

Булевы операции всегда применяются к двум объектам. Первый объект (который выделен) называется операндом А. Второй объект (который следует указать) – операнд Б. Тип булевой операции и взаимное расположение объектов определяют конечный результат. Объекты, к которым планируется применить булевы операции, должны иметь общую область, то есть соприкасаться друг с другом.

Существует четыре основных типа булевых операций:

• Union (Сложение) – операция предназначена для объединения двух исходных объектов, при этом общая область двух объектов удаляется (рис. 4.16, а);

• Intersection (Пересечение) – булев объект состоит только из общей области исходных объектов (рис. 4.16, б);

Рис. 4.16. Булевы операции Union (Сложение) и Intersection (Пересечение) с участием двух объектов – бутылки и сферы

• Subtraction (А – В) (Вычитание (А –Б)) и Subtraction (В – А) (Вычитание (Б –А)) – один исходный объект вырезает отверстие из другого исходного объекта (рис. 4.17);

Рис. 4.17. Булева операция Subtraction (А – В) и Subtraction (В – А) (Вычитание) с участием двух объектов – бутылки и сферы

• Cut (Разрезание) – операция предназначена для разрезания одного объекта другим (рис. 4.18).

Рис. 4.18. Булева операция Cut (Разрезание) с участием двух объектов – бутылки и плоскости

Для применения булевых операций нужно сделать следующее.

1. Создать два исходных объекта и убедиться, что они пересекаются.

2. Выделить один из объектов (выделенный объект автоматически получает имя – объект А).

3. Создать составной объект Boolean (Булев) одним из следующих способов:

• выбрать команду меню Create ? Compound ? Boolean (Создать ? Составные ? Булев);

• на вкладке Create (Создание) командной панели активизировать категорию создания трехмерных объектов Geometry (Геометрия), раскрыть список подкатегорий (там, где написано Standard Primitives (Стандартные примитивы)), выбрать строку Compound Objects (Составные объекты) и в свитке Object Type (Тип объекта) нажать кнопку с названием операции – Boolean (Булев). В свитке Parameters (Параметры) в области Operands (Операнды) появится имя операнда А.

4. Установить переключатель Operation (Операция) в положение, соответствующее нужной операции.

5. В свитке Pick Boolean (Выбрать булев объект) нажать кнопку Pick Operand B (Выбрать операнд Б), после чего в любом окне проекции щелкнуть на втором исходном объекте.

Если после применения операции понадобится изменить параметры операндов (например, изменить радиус сферы), следует на командной панели переключиться на вкладку Modify (Редактирование), в стеке модификаторов щелкнуть на плюсике слева от названия объекта Boolean (Булев). В появившемся списке перейти на единственный уровень редактирования – Operands (Операнды), затем в свитке Parameters (Параметры) в списке Operands (Операнды) щелкнуть на соответствующей строке. В стеке модификаторов под строкой Boolean (Булевы) появится строка-идентификатор соответствующего операнда. Щелчок на этой строке отобразит параметры операнда (рис. 4.19).

Рис. 4.19. Управление параметрами операндов осуществляется в стеке модификаторов

По умолчанию при выполнении булевой операции исходный объект Б удаляется. Однако если вы хотите, чтобы он оставался в сцене в том виде, в котором он присутствовал до булевой операции, необходимо до ее выполнения изменить положение переключателя в свитке Pick Boolean (Выбрать булев объект). Этот переключатель имеет четыре положения:

• Move (Перемещение) – после выполнения булевой операции объект Б удаляется. По умолчанию используется именно это положение;

• Copy (Независимая копия объекта) – булева операция выполняется с копией объекта Б, а сам объект остается в сцене;

• Instance (Привязка) – булева операция производится с зависимой копией объекта Б. При этом исходный объект остается в сцене, а изменение параметров одного из объектов (исходного или булевого) влечет за собой изменение параметров другого;

• Reference (Подчинение) – создается копия объекта Б, которая частично зависит от исходного объекта.

Внимание!

Иногда булевы операции выполняются некорректно, поэтому, перед тем как их производить, будет нелишним создать временную копию сцены, используя команду Edit ? Hold (Правка ? Записать). В случае сбоя операции можно восстановить сцену из файла фиксации, используя команду Edit ? Fetch (Правка ? Восстановить).

Начиная с девятой версии программы в 3ds Max есть два набора инструментов для работы с булевыми операциями – составной объект Boolean (Булев) и модуль ProBoolean (Пробулевы объекты).

При работе с последним операции объединения, пересечения и вычитания добавляют сетку и позволяют создавать сложные комплексные объекты. Использование объекта ProBoolean (Пробулевы объекты) позволяет исправлять топологию модели и удалять неправильные треугольники. Тем самым создаются качественные полигональные модели с минимальным количеством коротких ребер и мелких треугольников.

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

При работе с модулем ProBoolean (Пробулевы объекты) нельзя указать порядок выполнения операции. В любом случае при вычитании из выделенного объекта будет выполнено вычитание невыделенного объекта.

Одним из преимуществ модуля ProBoolean (Пробулевы объекты) является то, что сетка поверхности, полученной с его помощью, может включать в себя четырехугольные грани. Это дает возможность сгладить резкие углы на стыке булевых объектов. Для использования этой возможности нужно до выполнения операции установить флажок Make Quadrilaterals (Создание четырехугольников) в свитке настроек Advanced Options (Дополнительные настройки) параметров составного объекта ProBoolean (Пробулевы объекты). Модуль ProBoolean (Пробулевы объекты) позволяет создавать топологию таким образом, чтобы после применения к результирующей поверхности сглаживающих модификаторов MeshSmooth (Сглаживание сетки) или TurboSmooth (Турбосглаживание) на месте соединения формировались скругленные участки.

В большинстве случаев имеет смысл использовать именно модуль ProBoolean (Пробулевы объекты), поскольку результаты его работы более корректны. Однако принцип моделирования остается неизменным, какой бы из способов работы с булевыми объектами ни был выбран.

Для практического закрепления теоретического материала выполните упражнение «Упражнение 4. Оконные и дверные проемы» из раздела «Практика» данной главы.

Данный текст является ознакомительным фрагментом.