Пример построения параметрической сборки садовой деревянной постройки в учебной версии T-FLEX CAD 17


shower_cabin


Автор: Иван Черанёв, ведущий инженер-конструктор Отдела технологической подготовки производства ВСЗ

Готовая модель доступна для скачивания в разделе "Примеры"

В настоящее время CAD-системы всё чаще используются любителями (не связанными профессией с инженерной/проектной сферой) для своих различных практических задач. К их числу также относятся строительство и столярное ремесло, к которым, казалось бы, машиностроительные САПР мало применимы. Однако, эти системы могут успешно использоваться для моделирования любых деревянных изделий и строительных конструкций (из любого материала) – от простейшей мебели до жилых домов со всеми коммуникациями и обстановкой. Но, зачастую, у новичка, самостоятельно осваивающего CAD-систему, возникают трудности, связанные с плохим знанием возможностей и функционала системы. Из-за этого 3D модель получается неоптимальной, а работа с ней – неэффективной и утомляющей, и как итог поставленная задача остаётся нерешённой. Решение этой проблемы довольно простое – надо более внимательно изучить имеющиеся в системе инструменты и их опции. А освоение параметрического моделирования (работы с переменными) откроет ещё больше возможностей для более эффективной и успешной работы.

Для демонстрации того, как универсальная машиностроительная САПР применяется для решения задач деревянного малого строительства, и как при этом могут использоваться её параметрические возможности, рассмотрим пример моделирования небольшой дачной деревянной постройки — летней душевой кабины, в учебной версии T-FLEX CAD 17 (доступ к «боевой» версии есть далеко не у всех). Сразу оговоримся, что данный материал посвящён именно моделированию и параметризации, и не является пособием по конструированию деревянных конструкций, также предполагается наличие у пользователя базовых навыков работы с системой. Конструкция душевой кабины будет строиться на основе эскизного проекта (см. рис. 1; модель всегда полезно начинать с карандаша, так лучше видны Ваша цель и задачи).

shower_cabin
Рис. 1 — Эскизный проект душевой кабины (художник – Куклина Марина)

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

— конструкция деревянной душевой практически полностью состоит из типовых, практически одинаковых по форме (но не по размерам) деталей (из досок и брусков), вставка их как фрагментов сборки позволяет «нарисовать» доску всего один раз, и многократно использовать её, задавая лишь её параметры;

— управлять параметрами моделей досок будет проще, не нужно будет отдельно создавать наборы переменных (толщина, ширина, длина) для разных конструктивных элементов, при вставке параметрического фрагмента у него уже есть такой комплект.

Кратко определим используемые понятия:

— параметр — изменяемый элемент модели: геометрические размеры, включение тела (фрагмента) или его подавление и т. д.;

— переменная — элемент модели, который управляет параметром; имеет определённое имя и значение; может задаваться пользователем или определяться (рассчитываться) системой;

— фрагмент – внешняя модель, вставляемая в сборку, т.е. модель, созданная отдельно от сборки и сохранённая отдельным файлом;

параметрический фрагмент – это фрагмент, имеющий в себе внешние переменные, которые могут задаваться пользователем при вставке его в сборку или приниматься равными некоторым переменным сборки.

Построение параметрической модели доски/бруска


Прежде чем строить сборку, необходимо построить модель доски, которая обеспечит нам собираемые в конструкцию детали. Точнее, это будет универсальная модель — доска и брусок, т. к. различие между ними только в соотношении размеров. Эта модель должна позволить нам охватить весь ассортимент используемого пиломатериала, конечно за исключением профилированного (имитации бруса, накладных уголков и т. д.). Но при желании и, если нет необходимости в очень подробной модели, и профилированный материал можно в модели упростить до прямоугольного профиля, надо только правильно определить размеры этого прямоугольника (вычесть высоту шипа и т. д.).

Модель доски начинаем строить, как обычно: создаём файл детали, рисуем на плоскости вида слева (или другой — не важно, в сборке эти фрагменты будут ориентированы по-разному) поперечный профиль доски. Сначала ставим перекрестье в начале координат, а затем от него создаём параллельную линию для задания толщины доски (в данном случае профиль будет расположен вертикально), но вместо цифр в строчку параметра «расстояние» ставим букву, например, «а» (можно использовать любое другое буквенное обозначение (например, «толщина»), требования к именам переменных изложены в справке, в разделе «Параметризация»). Система всегда готова к таким действиям пользователя и тут же (после нажатия «Enter») предложит создать переменную с только что введённым именем (рис. 2). Эта переменная будет управлять параметром, определяющим расстоянием между вертикальными линиями в поперечном профиле, т. е. толщиной доски. Для переменной необходимо будет указать некоторое текущее значение (лучше такое, которое будут самым широкоиспользуемым) и отметить (поставить галочку) опцию «внешняя» - это необходимо для того, чтобы управление переменной из детали передавалось в сборку, без этой опции изменить параметр при вставке фрагмента в сборку будет невозможно. Также можно написать комментарий к переменной, чтобы потом её не путать с другими.

Аналогично поступаем с шириной доски — при построении параллельной вертикальной линии создаём вторую переменную.

shower_cabin
Рис. 2 — Создание переменных для толщины и ширины доски

Дорисовываем профиль — обводим прямоугольник, и начинаем его выталкивать, и точно так же, в строке параметра «длина» создаём новую переменную, которая будет управлять длиной (см. рис. 3). Численное значение можно поставить любое. После завершения операции построение тела доски в общем закончено. Осталось только задать материал, чтобы правильно рассчитывать массу и для большего соответствия внешнего вида. Для этого через дерево построения модели (окно «3D модель») или прямо в рабочем окне модели переходим в контекстное меню (правая клавиша мышки) и, зайдя в параметры тела, выбираем из предложенного списка нужный материал (см. рис. 4). К телу применится заданная текстура и механические свойства (в том числе плотность). При желании можно создать свой материал с необходимыми свойствами и текстурой.

shower_cabin
Рис. 3 — Создание переменной для длины доски

shower_cabin
Рис. 4 — Задание материала для тела

На этом модель доски с самой простейшей параметризацией готова к использованию. Все переменные модели можно посмотреть в редакторе переменных или в окне «Переменные» (см. рис. 5). Заодно проверим, все ли созданные переменные указаны как внешние (в общем случае, нет необходимости все переменные детали делать внешними, это необходимо только для тех, которые должны изменяться при вставке в сборку). Такая модель при вставке в сборку будет иметь окно «Переменные», где все они по отдельности могут задаваться пользователем (см. рис.6).

shower_cabin
Рис.5 — Редактор переменных модели

Но такой вариант задания переменных модели не самый оптимальный. Пиломатериал имеет строго определённые размеры, и, соответственно, переменные (толщина и ширина) будут использоваться только в определённых фиксированных комбинациях. И эти переменные логично так и задавать — указанием типоразмера сечения доски (бруска). Для этого необходимо освоить использование баз данных, хотя бы в простом виде.

Базу данных создаём через меню «Параметры» (рис. 7). Имя для БД лучше давать короткое, так будет удобнее писать её переменные. При нажатии «ОК» сразу начинают создаваться столбцы БД.

shower_cabin
Рис. 6 — Переменные модели при вставке в сборку

shower_cabin
Рис. 7 — Создание Базы данных

Создаём три столбца (рис. 8): первый — обозначение типоразмера сечения, тип — текстовый, т. к. обозначение является именно текстом, а не числом; второй и третий — для толщины и ширины профиля, тип вещественное — это будут именно числа.

Когда столбцы созданы, заполняем ячейки, аналогично тому, как на рисунке 9. После заполнения сохраняем файл модели доски, БД сохранится в нём.

shower_cabin
Рис.8 — Столбцы базы данных

shower_cabin
Рис. 9 — Заполненная база данных

shower_cabin
Рис.10 — Создание «ведущей» переменной

Чтобы использовать эту БД, нам нужно создать новую переменную (см. рис. 10), она будет задаваться пользователем и являться «ведущей» для переменных толщины и ширины. При её создании надо поставить галочку «текстовая» (этого делать не надо в том случае, если для определения типа профиля будет просто использоваться номер, тогда это будет вещественная переменная). Важно запомнить, что имя текстовой переменной обязательно начинается с символа «$», иначе система как текстовую её воспринимать не будет. Чтобы связать переменную с базой данных, необходимо в опции «Список» выбрать базу данных и указать столбик, значения из которого она будет принимать («Выбирать из поля»). В окне можно указать поля БД, которые будут показываться при вводе значения переменной. И, конечно, не забываем включить опцию «Внешняя».

Переменные «а» и «б» для задания толщины и ширины теперь должны задаваться по БД в зависимости от значения «ведущей» переменной «$сечение». Для этого в редакторе переменных им необходимо прописать выражение с использованием функции «find» (как один из вариантов) (см. рис. 11). Правило записи такое:

— сначала указывается столбик БД, из которого будет браться значение: имя БД и через точку имя столбика - Доска.б (Доска.а);

— затем через запятую записывается условие поиска — брать значение нужно из той строки, в которой в определённом столбце (Доска.сечение) значение равно текущему значению указанной «ведущей» переменной $сечение;

— всегда помним, что для системы прописная (А) и строчная (а) буквы — это разные буквы! В именах переменных и названиях столбцов БД их путать нельзя.

Таким образом, пользователь задаёт нужный ему типоразмер, а размеры сечения для этого типоразмера система определяет автоматически. На рисунке 12 показано, как это будет выглядеть при вставке фрагмента в сборке.

shower_cabin
Рис. 11 — Задание переменных через функцию «find»

shower_cabin
Рис. 12 — Окно переменных при вставке фрагмента в сборку

Построение каркаса душевой кабины

Пора переходить к созданию самой сборки. Её можно построить многими способами. Если необходимо обеспечение определённых габаритов конструкции, а также лёгкое управление ими с перестроением модели с изменениями, начинать следует с создания определённых баз, которые обеспечат нужную геометрию и станут привязками для вставки фрагментов. Один из способов создания таких баз — разметка пространства (или плоскости) 3D-узлами. В нашем случае они будут соответствовать углам основания кабинки.

shower_cabin
Рис.13— Разметка плоскости линиями

Итак, создаём новый файл – модель сборки, рисуем на плоскости «Вид сверху», начиная с перекрестья в центре. От перекрестья строим вертикальные и горизонтальные линии по габариту кабинки. При этом аналогично построению профиля доски создаём переменные «длина» (для вертикальных линий) и «ширина» (для горизонтальных линий) (см. рис. 13). При этом помним:

— для получения симметрии выражение пишем так: «длина/2», «ширина/2», т. е. переменная будет задавать целый размер, а построение будет идти на половину этого размера;

— при построении влево/вверх — со знаком «+», вправо/вниз — со знаком «-» («-ширина/2»).

Так же от правого края влево строим вертикальную линию для задания ширины дверного проёма с созданием переменной «проём».

Затем по пересечениям необходимо расставить 3D узлы, в данном случае хватит всего трёх — по верхней (габаритной) линии на углах и в точке окончания дверного проёма (см. рис.14). Это один из способов, 3D узлы можно строить по пересечениям плоскостей, по координатам и т. д. После создания узлов выходим из плоскости, сами узлы останутся видимыми в 3D окне, к ним в дальнейшем и будем привязывать фрагменты сборки.

shower_cabin
Рис.14— Разметка плоскости 3D-узлами

Кроме разметки для наиболее удобной работы нужна ещё дополнительная подготовка модели. Дело в том, что в конструкции душевой можно выделить отдельные группы деталей — верхняя и нижняя обвязки, обшивка, стойки и т. д. Для всех деталей каждой группы логично назначать одинаковый профиль материала, и для удобства редактирования фрагментов в этих группах мы создадим переменные, которые будут определять сечение пиломатериала. Для этого в файле сборки создаём такую же базу данных, как и в модели доски (см. рис. 7...9). Затем создаём набор текстовых переменных, которые будут брать значение из столбца «сечение», для каждой конструктивной группы должна соответствовать своя переменная (либо переменная может быть одна на несколько групп, если для них сечение пиломатериала планируется одинаковое) (см. рис. 15, 16).

Вот теперь можно начинать строить саму сборку душевой кабины. Начнём с одной стены, с нижней обвязки. Вставляем фрагмент доски с привязкой к 3D-узлу 1, любым удобным способом ориентируем её вдоль, оставляя ряд 3D по наружной кромке (см. рис. 17). Например, используя кнопки поворота системы координат и указание исходной системы координат (если надо сменить вершину доски). Переменные модели доски назначаем следующим образом:

— переменной L (длина доски) прописываем значение «длина» (т. е. имя переменной «длина», которая уже создана в сборке). Таким образом, длина этой доски всегда будет равна заданной длине душевой кабины;

— переменной «$сечение» присваиваем значение «$нижняя обвязка», точно так же связывая переменную фрагмента с переменной сборки.

После задания переменных размеры фрагмента настроятся в соответствии со значениями указанных переменных сборки.

shower_cabin
Рис.15 — Создание переменной для сечения пиломатериала

shower_cabin
Рис. 16 — Набор переменных сечения пиломатериала для разных конструктивных групп

shower_cabin
Рис. 17 — Вставка фрагмента — доски нижней обвязки

После нижней обвязки начинаем вставку фрагментов-стоек. Их ставим снаружи относительно обвязки с привязкой к разметочным 3D-узлам. Для задания длины стойки используем переменную сборки «высота» (её создаём заранее), чтобы высота кабинки всегда соответствовала нужному значению (см. рис. 18). Тут ещё надо учесть один момент — при вставке стойки лучше сначала применить сечение не бруска, а доски, и ориентировать её по плоскости стенки, а потом уже заменять доску на брусок. Это необходимо на тот случай, если позднее по какой-либо причине придётся бруски заменять на доски, чтобы они не встали «на ребро», и не пришлось перестраивать модель.

shower_cabin
Рис.18 — Вставка фрагмента — стойки

После стоек ставим верхнюю обвязку по внутренней стороне стоек, назначение переменных - по тем же соображениям (см. рис. 19).

shower_cabin
Рис.19 — Вставка фрагмента — верхней обвязки

Для размещения фрагментов-раскосов нужно будет построение дополнительных 3D-узлов. Это связано с тем, что при изменении размеров кабинки будет меняться угол наклона раскосов, и нам необходимо привязать эти фрагменты к уже имеющимся по определённым правилам. Сделать это можно разными способами. Воспользуемся тем же способом разметки 3D-узлами. Для этого начинаем рисовать на наружной грани нижней обвязки, проецируем на неё все стойки и верхнюю обвязку, линиями построения вычерчиваем нужное нам положение раскосов, в данном случае это сделано по заданной величине отступа раскосов от стоек. В завершение в нужных пересечениях создаём 3D-узлы (см. рис. 20).

shower_cabin
Рис. 20 — Разметка 3D-узлами положения раскосов

С наклоном раскосов определились, осталось рассчитать их длину. Для этого делаем замер между двумя 3D-узлами (см. рис. 21). Среди рассчитанных параметров выделяем «расстояние» и создаём для него переменную «раскос1» (кнопка ниже, на закладке переменных). При этом проверяем единицы измерения и, если необходимо, исправляем на миллиметры.

shower_cabin
Рис. 21 — Создание замера расстояния по двум 3D-узлами

Вот теперь вставляем фрагменты раскосов, для привязки используем два 3D-узла (задаём направление) и грань обвязки (эта привязка не обязательна, она фиксирует угловое положение относительно оси, заданной двумя узлами). Длину L связываем с вновь созданной переменной «раскос1» для обеспечения правильной длины раскоса (см. рис. 22). Ещё одно замечание — при выборе привязок (особенно второго узла) надо внимательно следить, какую именно привязку предлагает система — это должен быть именно узел, а не нормали в точке и т. д. Привязки можно выбирать из списка (см. рис. 23).

shower_cabin
Рис. 22 — Вставка фрагмента — раскоса

shower_cabin
Рис. 23 — Выбор привязки из предлагаемых системой

При таком положении раскоса его верхний конец будет выступать над верхней гранью верхней обвязки, его можно (но не обязательно) отсечь заподлицо с обвязкой. Для этого по верхней грани обвязки строим рабочую плоскость и командой «Отсечение» отсекаем верхний край раскоса (см. рис. 24). Нижний конец раскоса за обвязку не выступает, его отсекать не надо.

shower_cabin
Рис. 24 — Отсечение раскоса заподлицо с обвязкой

Затем аналогично поступаем со вторым раскосом: выполняем замер расстояния по двум 3D-узлам с созданием переменной «раскос2», вставляем фрагмент, подрезаем его.

После размещение раскосов мы имеем готовый каркас одной стены, каркас второй стены проще всего получить симметричным («зеркальным») отображением относительно продольной вертикальной плоскости (см. рис. 25). «Зеркалить» каркас можно целиком либо частями — если есть сомнения в конструкции некоторых элементов (особенно — сомнения в их необходимости), и они могут быть подвергнуты редактированию в ходе корректировки проекта, их симметричные копии лучше строить отдельно.

shower_cabin
Рис. 25 — Построение симметричного отображения каркаса стены

Для завершения построения каркаса остаётся добавить поперечные нижнюю и верхнюю обвязки. Для нижней обвязки нужна будет переменная длины (она не равна ширине кабинки), для её создания делаем замер между внутренними гранями нижних обвязок (см. рис. 26).

shower_cabin
Рис. 26 — Замер длины поперечной обвязки

При вставке фрагмента поперечной обвязки указываем соответствующие ему переменные длины и сечения (см. рис. 27). Так же, из конструктивных соображений, сдвигаем обвязку немного внутрь, за стойку, для удобства её крепления (сквозь продольную обвязку).

shower_cabin
Рис. 27 — Вставка нижней поперечной обвязки

Для того чтобы избежать врезок в деталях, верхнюю поперечную обвязку будем ставить немного ниже продольных, при этом её длине будет соответствовать переменная «ширина», т. к. её торцы лежат на наружных гранях продольных обвязок (см. рис. 28).

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

shower_cabin
Рис. 28 — Вставка верхней поперечной обвязки

Построение зашивки пола и обшивки стен

Вставляем первую доску зашивки пола с привязкой к краю обвязки, задав фрагменту соответствующие значения переменных (см. рис. 29).

shower_cabin
Рис. 29 — Вставка первой доски зашивки пола

Зашивку пола будем строить линейным массивом, но так как длина кабины переменная, то и параметры массива (шаг и количество элементов) должны автоматически изменяться. Для этого необходимо создать несколько переменных.

Первая из них — это переменная, соответствующая ширине доски зашивки пола. Это в нашем случае можно сделать двумя способами:

— замерить длину поперечного ребра доски пола с созданием переменной «ШДП» (см. рис. 30 – переменная в редакторе переменных);

— брать нужное значение из базы данных («доска») в модели сборки душевой кабины, исходя из значения переменной «$пол» (она определяет сечение материала для досок пола, см. рис. 15):

ШДП= find (доска.б, доска.сечение==$пол).

Вторая переменная — количество досок (элементов массива), рассчитывается делением длины кабины на ширину доски пола с округлением до ближайшего меньшего целого:

КДП= floor (длина/ШДП) (нужные функции можно найти через помощника в редакторе переменных, см. рис. 30).

Третья переменная будет выполнять расчёт шага массива, исходя из рассчитанного количества элементов и ширины доски:

пол_шаг= (длина-ШДП)/(КДП-1).

Массив досок зашивки пола можно строить, используя переменные «КДП» и «пол_шаг» для задания его параметров. При этом наружные грани первой и последней досок всегда будут лежать на наружных торцах продольных обвязок. Но можно пойти немного дальше и добавить переменные, контролирующие зазор между досками. Это будут:

— переменная, рассчитывающая зазор по рассчитанному шагу:

пол_зазор= пол_шаг-ШДП;

— переменная, задающая шаг элементов по условию: если зазор получается менее заданной величины (например, 10 мм), то шаг принимается по ранее рассчитанной величине (переменная «пол_шаг»); если зазор превышает данную величину, то шаг рассчитывается как сумма ширины доски и заданной максимальной величины зазора:

шаг_пол2= пол_зазор<=10 ? (пол_шаг):(ШДП+10).

shower_cabin
Рис. 30 — Набор переменных для массива зашивки пола

shower_cabin
Рис. 31 — Построение массива зашивки пола

Построение массива показано на рисунке 31. При этом направление задано поперечной рабочей плоскостью (массив строится по направлению её нормали).

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

Следующим этапом будет создание в модели обшивки стен. В соответствии с эскизным проектом обшивка будет начинаться на некоторой высоте над полом, и для привязки первой доски необходимо создать 3D-узел на заданной высоте. Одним из способов построения этого узла будет пересечение ребра стойки с плоскостью, имеющей необходимое смещение от поверхности пола. При создании плоскости также можно создать переменную для управления этим зазором (см. рис. 32). После построения плоскости строим 3D-узел на её пересечении с ребром стойки (см. рис. 33).

shower_cabin
Рис. 32 — Построение плоскости со смещением от пола

shower_cabin
Рис. 33 — Построение 3D-узла для привязки обшивки

Для моделирования обшивки стен будем использовать ту же модель доски (в учебных целях), что и на настил пола, при желании можно сделать более подробную модель фасонной доски, если таковая используется. Фрагмент доски вставляется с привязкой к созданному узлу, ориентируется нужным образом; переменные задаются точно так же, как и для других фрагментов (см. рис. 34).

shower_cabin
Рис. 34 — Вставка первой доски обшивки стены

После первой доски последовательно добавляем фрагменты для обшивки других стен, привязываясь при этом к вершинам уже имеющихся в модели досок. Для доски со стороны дверного проёма необходимо предварительно создать переменную для задания длины — с помощью замера расстояния (см. рис. 35).

shower_cabin
Рис. 35 — Вставка последней доски обшивки стен

Аналогичным образом «зашиваем» фрагментами досок нижнюю обвязку (см. рис. 36).

shower_cabin
Рис. 36 — Зашивка нижней обвязки

Далее для создания массива досок обшивки нам снова потребуются дополнительный параметр — количество элементов (рядов досок). Для этого мы сначала создаём переменную высоты зашивки — замером между плоскостью нижнего края обшивки и верхней гранью верхней обвязки (см. рис. 37). Ещё с помощью замера (или через базу данных) создаём переменную «ШДО» для ширины доски обшивки (см. выше на примере зашивки пола).

shower_cabin
Рис. 37 — Создание переменной для высоты обшивки

Массив досок обшивки стен будем делать немного иначе, чем массив досок настила пола. Так как элементы массива (доски) должны располагаться без зазора, это упрощает задачу — шаг массива можно задать непосредственно по модели доски, задав две вершины. При этом шаг массива автоматически будет всегда равен ширине доски. Также не будем создавать переменную — количество элементов массива, а пропишем выражение для этого расчёта прямо в строке параметра «floor (высота_обшивки/ШДО)» (так тоже можно делать, особенно, если эта переменная больше нигде использоваться не будет) (см. рис. 38).

shower_cabin
Рис. 38 — Создание массива обшивки стен

Закончив с обшивкой, можно переходить к моделированию двери. Её будем строить в закрытом положении без таких подробностей, как петли, ручки и прочая фурнитура. Конструктивно это будет обшитая доской рамка из бруска, по высоте равная обшивке стен. Построение каркаса двери начинаем со вставки вертикального бруска с привязкой к вершине стойки, но при этом задаём некоторое смещение бруска от стойки. В этом зазоре должны будут располагаться дверные петли (можно сделать и без зазора, если задуманная конструкция навешивания двери зазора не предполагает). Длину бруска задаём по переменной высоте обшивки (см. рис. 39).

shower_cabin
Рис. 39 — Вставка первого бруска двери

Бруски каркаса двери будут соединяться врезкой вполовину (могут быть и другие способы врезки, способ моделирования будет в целом такой же). Для создания врезки начинаем чертить на передней грани бруска, и, используя ось симметрии, строим профиль в виде двух квадратов на обоих концах бруска (см. рис. 40).

Для построения врезки точно на половину толщины бруска выталкивать необходимо до середины ребра, при этом сразу включаем булево вычитание, не забыв указать тело бруска (для выполнения вырезания) (см. рис. 41).

shower_cabin
Рис. 40 — Построение профиля для врезки

shower_cabin
Рис. 41 — Создание врезки выталкиванием

Для построения второго вертикального бруска можно использовать операцию симметричного отображения. Для этого предварительно придётся создать плоскость, проходящую через середину дверного проёма (см. рис. 42).

shower_cabin
Рис. 42 — Построение плоскости по середине дверного проёма

Далее, для построения горизонтальных брусков каркаса двери и её обшивки, нам необходима переменная, задающая ширину двери. Создаём её через замер расстояния между наружными рёбрами вертикальных брусков каркаса двери (см. рис. 43).

shower_cabin
Рис. 43 — Создание переменной для ширины двери

Горизонтальный брусок вставляем с привязкой к «задней» вершине вертикального уголка, длину задаём только что созданной переменной (см. рис. 44).

shower_cabin
Рис. 44 — Вставка горизонтального бруска каркаса двери

Чтобы сделать врезки в горизонтальном бруске используем булеву операцию вычитания, используя опцию «оставить в сцене» для вторых операндов (вертикальных брусков) (см. рис. 45).

Верхний горизонтальный брусок готов, нижний брусок будем создавать копированием с привязкой по исходной и целевой системам координат (СК). СК могут создаваться автоматически в выбранных точках. Привязками в данном случае должны быть одинаково расположенные вершины в узлах верхней и нижней врезки — например, это будет верхняя вершина на наружном ребре с левой стороны горизонтального бруска. Копия тела будет занимать точно такое же положение, как и оригинал (см. рис. 46).

shower_cabin
Рис. 45 — Создание врезки булевым вычитанием

shower_cabin
Рис. 46 — Создание нижнего бруска копированием

shower_cabin
Рис. 47 — Вставка поперечных опорных досок

Далее на двери остаётся создать обшивку, точно так же, как создавалась обшивка стен. И в завершение построения модели остаётся добавить фрагменты поперечных опорных досок под водяной бак. Первую доску вставляем с привязкой к наружной вершине верхней обвязки; вторую доску привязываем к вершине первой доски и задаём необходимое смещение. Сечение пиломатериала в данном случае можно задать напрямую, не создавая специальной переменной для данной конструктивной группы, длина доски — по переменные ширины (см. рис. 47).

На этом модель основной части конструкции, без крепежа, фурнитуры и прочих мелочей готова. Созданные нами в модели взаимосвязи и набор переменных позволяют быстро перестроить всю конструкцию при изменении задаваемых пользователем размерами с сохранением конструкции (см. рис. 48). Для этого в редакторе переменных сборки изменяются нужные переменные и выполняется полный пересчёт модели. Если при перестроении не возникло сбоев, и конструкция не нарушилась, значит в процессе моделирования всё было сделано правильно.

shower_cabin
Рис. 48 — Варианты размеров душевой кабины

В завершение стоит отметить пару моментов (советов) для начинающих:

- здесь был описан лишь один вариант построения модели такой конструкции, а их всегда много. Чем лучше пользователь знает возможности системы, тем больший выбор способов построения он имеет и тем проще найдёт самый оптимальный из них. Вывод – изучайте систему, её инструменты и опции, не ограничивайтесь узким набором команд;

- в моделировании как простых, так и крупных сборок действуют одинаковые правила, применяются одинаковые инструменты, просто больше количество раз. Вывод – не бойтесь построения крупных сборок (хотя бы и домов), их построение будет мало чем отличаться от моделирования такой душевой кабинки.

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