Создание дверных и оконных проемов
Создание дверных и оконных проемов
Когда основная коробка помещения готова, можно приступать к созданию оконных и дверных проемов. Мы рассмотрим два метода создания проемов: полигональное моделирование и булевы операции. Позднее эти методы позволят создавать не только формы проемов, но и разнообразные ниши и углубления в стенах.
Создание проемов полигональным моделированием
Ранее я говорил, что полигональное моделирование является универсальным, позволяет создавать самые разнообразные формы, поэтому мы не раз будем возвращаться к нему при создании разных объектов.
Для создания проемов в стенах методом полигонального моделирования, нам понадобится предварительно изучить два инструмента работы с подобъектами:
? Bridge (Мост);
? Slice Plane (Делящая плоскость).
Также мы рассмотрим очередной тип модели — Poly (Поли) и работу с подобъектами Vertex (Вершина).
Инструмент Bridge (Мост)
Для начала выполним небольшое задание, иллюстрирующее действие инструмента Bridge (Мост), который используется при создании проемов.
1. В окне проекций Perspective (Перспектива) создайте примитив Box (Куб). Значения его длины, ширины и высоты задайте любыми, но одинаковыми, чтобы он действительно имел форму куба. Значения параметров сегментации задайте равными 3 во всех направлениях.
2. Включите добавочный режим отображения моделей — Edged Faces (Выделенные ребра) (см. рис. 1.51). Так нам удобнее будет работать с сегментационной сеткой модели.
3. Выделите созданный куб, вызовите квадрупольное меню и выберите пункт Convert To (Перевести в) | Convert to Editable Poly (Перевести в редактируемый поли).
4. Тем самым вы перевели примитив куб в тип редактируемого поли. Данный тип хорош тем, что существует множество удобных инструментов для обработки его формы. Мы сейчас рассматриваем лишь один инструмент — Bridge (Мост), который позволяет, помимо всего прочего, создавать проемы в форме poly-модели.
5. Во втором разделе командной панели, в стеке модификаторов раскройте структуру подобъектов куба (щелчком по значку "+" слева от надписи "Editable Poly"). Здесь — перед нами почти те же объекты, что в случае использования объекта типа Mesh (Сетка). Исключение составляет подобъект Border (Граница), находящийся в списке на месте подобъекта Face (Грань). Нам понадобятся лишь подобъекты Edge (Ребро) и Polygon (Полигон).
6. Выберите уровень редактирования подобъекта Polygon (Полигон). На поверхности куба выделите два центральных полигона, расположенные напротив друг друга на разных его гранях (рис. 2.36). Это можно сделать следующим образом: в окне Perspective (Перспектива) выделите первый полигон, затем при помощи инструмента управления окнами проекций Orbit (Вращение) поверните ракурс так, чтобы была видна противоположная грань, зажмите клавишу <Ctrl> и выделите второй полигон, расположенный напротив (нажатая клавиша <Ctrl> позволит добавить выделение).
7. В нижней части второго раздела командной панели, под стеком модификаторов, раскройте свиток Edit Polygons (Редактировать полигоны). Здесь находится инструмент Bridge (Мост) (рис. 2.37).
8. Нажмите кнопку данного инструмента. В результате на форме модели куба появился проем, форма которого описывается формами выделенных полигонов (рис. 2.38).
Таким образом, инструмент Bridge (Мост) позволяет создавать сквозные проемы по форме двух выделенных полигонов, а значит, для создания формы проема необходимо, прежде всего, передать правильную форму этих полигонов. Для этого нам понадобятся инструмент Slice Plane (Делящая плоскость) и работа с вершинами (Vertex).
В папке Primeri_ScenGlava_2 на компакт-диске есть файл Bridge.max, иллюстрирующий порядок применения данного инструмента.
Инструмент Slice Plane (Делящая плоскость)
Чтобы изменить количество сегментов, образующих сегментационную сетку любого из стандартных примитивов, можно было воспользоваться параметрами сегментации объекта. В свою очередь, poly-модели (как и mesh-модели) не обладают параметрами сегментации и вообще каким-либо настраиваемыми параметрами. Для создания дополнительных сегментов на поверхности pol-моделей существует специальный инструмент Slice Plane (Делящая плоскость). Рассмотрим порядок его применения на отвлеченном примере.
1. Создайте в сцене примитив Box (Куб) произвольных размеров. Значения параметров сегментации во всех направлениях задайте равными 1.
2. При помощи квадрупольного меню превратите данный примитив в poly-модель (Convert To (Перевести в) | Convert to Editable Poly (Перевести в редактируемый поли)).
3. Раскройте структуру подобъектов poly-модели в стеке модификаторов и выберите пункт Edge (Ребро). Рассматриваемым инструментом сегменты добавляются именно на этом уровне редактирования.
4. В свитке Edit Geometry (Редактировать геометрию), расположенном под стеком модификаторов, выберите инструмент Slice Plane (Делящая плоскость) (рис. 2.39).
5. В сцене появилась желтая плоскость, опоясывающая форму poly-модели (рис. 2.40). Там, где плоскость непосредственно пересекается с формой poly-модели, на поверхности модели появились красные линии. Эти линии — форма добавляемых сегментов. В любой момент можно создать сегменты там, где расположена красная линия.
6. При помощи манипуляторов движения и вращения измените позицию и наклон желтой плоскости. Обратите внимание, как позиция красной линии повторяет эти преобразования.
7. Чтобы создать дополнительный сегмент по форме красной линии, нажмите кнопку Slice (Поделить), расположенную сразу под кнопкой Slice Plane (Делящая плоскость). Затем отодвиньте желтую плоскость в сторону. Повторите это действие несколько раз.
8. Чтобы восстановить исходную позицию желтой плоскости, можно нажать кнопку Reset Plane (Сбросить плоскость).
9. Окончив добавление сегментов, вновь нажмите кнопку Slice Plane (Делящая плоскость), для выхода из режима добавления сегментов. Теперь сегментов у модели стало больше (рис. 2.41).
Таким образом, инструмент Slice Plane (Делящая плоскость) позволяет добавлять произвольное количество сегментов в произвольных местах. Это бывает полезно при моделировании, в частности — от количества сегментов зависит количество полигонов, а именно с полигонами мы работаем, создавая форму оконных и дверных проемов методом полигонального моделирования.
Подобъекты Vertex (Вершина)
При работе над формой проемов методом полигонального моделирования, нам понадобится работать с первым подобъектом poly-модели — Vertex (Вершина). Рассмотрим предварительно работу с этим подобъектом на отвлеченном примере.
1. Создайте в сцене примитив сферу произвольного радиуса.
2. При помощи квадрупольного меню превратите сферу в Editable Poly (Convert To (Перевести в) | Convert to Editable Poly (Перевести в редактируемый поли)).
3. Перейдите во второй раздел командной панели, раскройте структуру подобъектов в стеке модификаторов (см. рис. 2.10) и выберите здесь первый пункт — Vertex (Вершина).
Вершина — это узловая точка на поверхности сегментационной сетки. Там, где пересекаются белые линии сегментов, образуются вершины. Как только вы выделили данный уровень редактирования, все вершины на поверхности модели стали синими (рис. 2.42).
Теперь их можно выделять и двигать при помощи манипулятора движения. Передвигая вершины, мы меняем структуру сегментной сетки и форму самой модели (рис. 2.43).
Позднее, на практике мы рассмотрим некоторые инструменты работы с вершинами. Для создания проемов нам понадобится пока лишь перемещать их в пространстве, меняя структуру и форму полигонов.
Создание проемов
Рассмотрим порядок создания проемов с использованием инструментов Slice Plane (Делящая плоскость) и Bridge (Мост).
1. Откройте сцену со стенами, созданными методом полигонального моделирования (свою или из файла Steni_poligon_model.max в папке Primeri_ScenGlava_2 на компакт-диске).
2. Напомню, что тип модели стен сейчас — mesh-модель. Нам для работы с обозначенными инструментами необходим тип Poly. Выделите модель, вызовите квадрупольное меню и выберите пункт Convert To (Перевести в) | Convert to Editable Poly (Перевести в редактируемый поли).
3. Раскройте структуру подобъектов poly-модели в стеке модификаторов (см. рис. 2.10) и выберите подобъект Edge (Ребро).
4. Теперь необходимо сформировать полигоны, которые будут иметь форму дверного и оконного проемов. В свитке Edit Geometry (Редактировать геометрию) найдите и включите инструмент Slice Plane (Делящая плоскость) (см. рис. 2.39).
5. Сначала создадим формы полигонов дверного проема. Форма и позиция двери обозначены на плане помещения, приведенном на рис. 2.5. Для создания этих полигонов, нам понадобится создать дополнительные один горизонтальный сегмент и два вертикальных.
Создадим сначала горизонтальный сегмент. Выберите манипулятор движения, откройте окно точного ввода значений координат и задайте Z-координату желтой делящей плоскости равной 210 см (именно такая высота двери предполагается по плану).
6. Нажмите кнопку Slice (Разделить). Горизонтальный сегмент добавлен.
7. Далее необходимо создать вертикальные сегменты. Повернуть желтую делящую плоскость лучше всего при помощи окна точного ввода значений координат. Выберите манипулятор вращения и вызовите это окно (нажатием правой кнопки мыши по манипулятору). Значение поворота в отношении оси Y задайте равным 90 градусов (перед этим убедитесь, что активно окно Perspective (Перспектива), а не другое, иначе необходимо будет поворачивать в отношении других осей).
Позиция вертикальных сегментов определяется позицией двери на плане. Между дверью и ближайшей к ней перпендикулярной стеной — 100 см. Мы не зря расположили помещение в правой верхней плоскости координатной сетки. Это позволяет удобно и точно отмерять расстояния в помещении. Выберите манипулятор движения, вызовите окно точного ввода значений координат и задайте X-координату желтой делящей плоскости равной 100 (при этом она должна расположится в метре от левой стены помещения. Если она расположилась иначе — вручную поместите ее в необходимую точку. Я исхожу из того, что комната расположена в правой верхней четверти сетки координат).
8. Нажмите кнопку Slice (Разделить). Появился первый вертикальный сегмент.
9. Задайте X-координату делящей плоскости равной 190 см (100 — позиция первого сегмента + 90 — ширина самой двери). Вновь нажмите кнопку Slice (Разделить).
10. Выйдите из режима Slice Plane (Делящая плоскость), повторно нажав эту кнопку. У вас должен быть включен дополнительный режим отображения моделей Edged Faces (Выделенные ребра). Если он не включен, включите его. Модель с добавленными полигонами должна выглядеть, как на рис. 2.44.
11. В стеке модификаторов перейдите с режима редактирования Edge (Ребро) на режим редактирования Polygon (Полигон). Выделите два полигона по форме двери (внутренний и внешний, при помощи клавиши <Ctrl> — добавление выделения) и нажмите кнопку Bridge (Мост). Дверной проем готов (рис. 2.45).
12. Для создания оконного проема сначала вновь вернитесь на уровень редактирования Edge (Ребро) в стеке модификаторов и включите режим Slice Plane (Делящая плоскость) в свитке Edit Geometry (Редактировать геометрию).
13. Нам понадобится создать еще один горизонтальный полигон, поэтому при помощи манипулятора вращения и окна точного ввода значений координат, поверните делящую плоскость еще на 90 градусов относительно оси Y.
14. Высота окна над уровнем пола — 90 см. Выберите манипулятор движения, откройте окно точного ввода значений координат и задайте Z-координату делящей плоскости равной 90 см. Нажмите кнопку Slice (Разделить).
15. Выйдите из режима Slice Plane (Делящая плоскость). Теперь на противоположной стене помещения образовалась сегментная сетка, как на рис. 2.46.
Прямоугольник из сегментных линий — это форма будущего окна. Однако он расположен в ненадлежащем месте и имеет ненадлежащую форму. Для его редактирования нам понадобится перейти на уровень редактирования Vertex (Вершина).
16. В окне проекций Front (Вид спереди), при помощи рамки выделения, выделите вершины, образующие форму центрального прямоугольника (рис. 2.47).
17. При этом выделились не только вершины на противоположной от двери стене, но и вершины стены, на которой расположена дверь. Нам же необходимо выделить только вершины противоположной стены, поэтому нажмите клавишу <Alt> (Для вычитания выделения) и в окне проекций Top (Вид сверху) рамкой выделите всю стену, на которой расположена дверь. Таким образом, вы вычли выделение ненужных вершин.
18. В окне проекций Front (Вид спереди), при помощи манипулятора движения, переместите выделенные вершины вправо (рис. 2.48).
19. Затем, поочередно выделяя группы вершин при помощи рамки, расположите их так, чтобы прямоугольник образовывал форму оконного проема (рис. 2.49). Выделять вершины необходимо именно рамкой, так как иначе вы не выделите все необходимые вершины (в ортографических окнах вершины перекрывают друг друга — кажется, что вершина одна, а за ней расположена еще одна. Выделяя рамкой, вы выделяете обе, а щелчком — лишь одну).
20. Создав форму будущего оконного проема, перемещая вершины, перейдите на уровень редактирования Polygon (Полигон). Выделите два полигона (внутренний и внешний), образующие форму оконного проема (рис. 2.50).
21. Нажмите кнопку Bridge (Мост). Форма оконного проема готова (рис. 2.51).
Итак, вы выполнили формы дверного и оконных проемов при помощи метода полигонального моделирования. Возможно, с первого раза вам не удалось корректно выполнить все вышеперечисленные действия. Действительно, многие из них (например, перемещение подобъектов в пространстве) требуют некоторых навыков и у новичков вызывают трудности. В этом нет ничего страшного, вы можете двигаться дальше, обретая все необходимые навыки, а затем вернуться и выполнить данные действия еще раз. Готовая сцена с проемами, выполненными таким образом, содержится в файле Proemi_poligon_model.max в папке Primeri_ScenGlava_2 на компакт-диске.
Метод полигонального моделирования достаточно сложен, но по-своему хорош. Если он показался чересчур сложным, используйте второй метод — булева вычитания.
Создание проемов методом булева вычитания
Очередной метод создания проемов гораздо более прост и удобен. В дальнейшем, на практике, советую использовать именно его, т. к. он более универсален в некоторых случаях. Речь идет о методе булева вычитания.
Суть его заключается в вычитании формы одного объекта из формы другого объекта. Для этого необходимо выполнить так называемые булевы операции. Одна из булев операций — вычитание. Именно она позволяет вычитать формы объектов.
Булева операция вычитания
Рассмотрим порядок совершения булевых операций на отвлеченном примере.
1. Создайте новую сцену или примените функцию File (Файл) | Reset (Сброс).
2. Создайте стандартный примитив Box (Куб), так чтобы он был невысоким, но широким и длинным (как, например, столешница стола). Он будет уменьшаемым объектом (т. е. тем, в котором будут формироваться прорези). Затем создайте множество других стандартных примитивов, которые будут пересекать куб насквозь. Это будут вычитаемые объекты (т. е. те, которые будут вычитаться) (рис. 2.52).
3. Наша задача — вычесть формы небольших примитивов из плоского куба. Выделите куб, в первом разделе командной панели (Create) в первом подразделе (Geometry) раскройте список типов объектов и выберите пункт Compound Objects (Составные объекты) (рис. 2.53).
4. Появляется список составных объектов. Составные объекты — это такие, форма которых получается путем обработки двух или более исходных объектов. Нам здесь понадобится инструмент ProBoolean (рис. 2.54).
5. Нажмите данную кнопку. Ниже группы инструментов создания составных объектов появляются свитки с параметрами создания объекта ProBoolean. Здесь нам понадобится свиток Pick Boolean (Указать булев) и группа Operation (Операция) свитка Parameters (Параметры) (рис. 2.55).
6. В группе Operation (Операция) свитка Parameters (Параметры) мы задаем ту операцию, которую будем выполнять. Операция Subtraction (Вычитание) — наиболее часто употребляемая, поэтому является стандартной, т. е. включенной по умолчанию. Именно она нам и нужна.
7. Убедитесь, что выбрана операция Subtraction (Вычитание), и нажмите кнопку Start Picking (Начать показывать), расположенную в свитке Pick Boolean (Указать булевский).
8. Поочередно щелкайте в сцене по небольшим примитивам, пересекающим плоский куб. После каждого щелчка форма вычитаемых объектов будет вычитаться из формы уменьшаемого, а сами вычитаемые объекты пропадут.
9. Щелкнув по каждому из объектов, вы в результате получите исходный куб со множеством прорезей (рис. 2.56).
Таким образом, используя булевскую операцию вычитания, можно быстро и удобно вычесть форму одного объекта из формы другого объекта, сформировав тем самым проем или нишу.
Для закрепления, привожу общий порядок совершения булевой операции вычитания:
1. Создание объектов в сцене и совмещение их в пространстве. Исходные объекты обязательно должны соприкасаться, иначе вычитание выполнить не удастся.
2. Выделение уменьшаемого объекта и нажатие кнопки ProBoolean. Дело в том, что программа не знает, какой именно объект предполагается уменьшаемым, а какой — вычитаемым. Выделяя конкретный объект до нажатия кнопки ProBoolean, вы указываете уменьшаемый объект (т. е. тот, из которого будет происходить вырезание).
3. Нажатие кнопки Start Picking (Начать показывать) для указания вычитаемых объектов (т. е. тех, которые мы будем вырезать).
4. Последовательное указание всех вычитаемых объектов в сцене при помощи обыкновенного щелчка по ним. В конце необходимо щелкнуть правой кнопкой мыши, чтобы выключить инструмент ProBoolean.
Создание проемов
Создадим проемы в форме стен методом булева вычитания.
1. Откройте сцену с помещением, стены которого созданы методом выдавливания сечения (файл Steni_Pol.max в папке Primeri_ScenGlava_2 на компакт-диске).
2. В окне проекций Perspective (Перспектива) создайте примитив Box (Куб). Задайте следующие значения его габаритных размеров: Length (Длина) — 100 см, Width (Ширина) — 90 см, Height (Высота) — 210 см. При помощи окна точного ввода значений координат задайте объекту следующую позицию: X = 145 см, Y = -20 см, Z = 0 см. Получился вычитаемый объект, установленный в районе будущего дверного проема (рис. 2.57).
3. В окне проекций Perspective (Перспектива) создайте примитив Box (Куб). Задайте следующие значения его габаритных размеров: Length (Длина) — 100 см, Width (Ширина) — 200 см, Height (Высота) — 150 см. При помощи окна точного ввода значений координат задайте объекту следующую позицию: X = 350 см, Y = 420 см, Z = 90 см. Получился вычитаемый объект, установленный в районе будущего оконного проема (рис. 2.58).
4. В списке типов объектов выберите пункт Compound Objects (Составные объекты) (рис. 2.53).
5. Выделите модель стен. Нажмите кнопку ProBoolean (см. рис. 2.54).
6. В появившемся свитке Pick Boolean (Указать булев) нажмите кнопку Start Picking (Начать показывать).
7. Поочередно щелкните по кубам, созданным в шагах 2 и 3. В результате получатся два проема: дверной и оконный (рис. 2.59).
Таким образом, мы создали проемы методом булева вычитания. Как видите, этот метод гораздо проще, чем предыдущий. В дальнейшем мы будем использовать его для создания любых проемов. Образец готовой сцены содержится в файле Proemi_boolean.max в папке Primeri_ScenGlava_2 на компакт-диске.
Данный текст является ознакомительным фрагментом.