Семейства для армирования — часть 1

По многочисленным просьбам начинаю серию статей по созданию семейств для армирования, попадающих в одну спецификацию со стандартной арматурой. Это начало, вторая часть здесь. UPD: более подробный и актуальный видеоуроки смотрите в моём видеокурсе на платформе Stepik.

Это примерно то, о чем я рассказывал в своем выступлении на Autodesk University, но лучше! А в итоге получим что-то такое:

В первой части научимся делать загружаемое семейство в категории «Несущая арматура», а также узнаем, что нет ничего лучше коллективного разума.

Часть 1  — предыстория

В докладе на AU я рассказывал, что стандартных инструментов армирования не хватает, если хочется сделать какие-то готовые параметрические семейства с арматурой внутри. Но при создании семейства нельзя выбрать категорию «Несущая арматура», а если использовать «Спецификацию по нескольким категориям» — нет возможности вывести в спецификацию параметры, специфичные для определенной категории. Я делал семейства арматуры в категории «Соединения несущих конструкций», и в спецификацию не мог вытащить «Количество» — системный параметр «Несущей арматуры».

Я предложил создать общий параметр «КоличествоМассива», назначить его «Несущей арматуре» и выводить в спецификацию его, назначение «Количество» вписывать вручную. Позже на том же AU товарищи Коцарь и Лобанов помогли создать скрипт на Dynamo, который делал бы это автоматически.

Но решение все равно было тяжеловесным — скрипт нужно было запускать вручную, нужно было создавать слишком много дополнительных параметров… Но и с таким способом работы мы сделали пару проектов.

Но уже скоро я убедился, что нет ничего полезнее коллективного разума и обмена идеями. Никогда не бойтесь делиться информацией! Дружное сообщество пользователей — наша главная ценность!

Входе обсуждения на dwg.ru господин VadimS7 напомнил одну идею, о которой слышал давно, но не думал, что она окажется так полезна в нашей ситуации. Был найден способ создания семейств в «запрещеннйо» категории с использованием экспорта в IFC, описанный в одном англоязычном блоге. Кто бы мог подумать, эта идея, не имеющая, казалось бы, к арматуре никакого отношения, окажется так полезна.

Часть 2 — хитрости в IFC

Идея в том, что во время экспорта в IFC все объекты превращаются в «Контекстные модели» соответствующей категории.

Создаю любую стенку и в ней — один арматурный стержень, тоже любой:

Экспортирую это дело в формат IFC:

Сохраняю файл куда-нибудь. Открываю этот IFC-файл :

Удивительно: арматура превратилась в «Контекстную модель» категории «Несущая арматура»!

Теперь надо как-то превратить контекстное семейство в загружаемое.

Часть 3 — Превращаем контекстное семейство в загружаемое

Конечно, все справки и руководства говорят нам, кто контекстное семейство существует только в одном проекте и не может переходить из проекта в проект… Но когда нас это останавливало? :)
Способ превращения контекстного семейства тоже давно известен, и я просто продублирую еще раз.

Выделите контекстный элемент и зайдите в «Контекстное редактирование»:

Выберите элемент выдавливания и создайте группу:

Выберите группу, зайти Файл — Сохранить как — Библиотека — Группа:

Не меняйте в окне никаких настроек, сохраните файл куда-нибудь. Если все сделано правильно — в папке будет создан rfa-файл с именем, совпадающим с именем группы:

 

Часть 4 — Что дальше?

Проверим, что это за странный файл получился! Открываю и захожу в «Категорию семейства»:

«Антураж»? Это что еще такое? Хотя, ничего удивительного — ведь в списке нет категории «Несущая арматура», и отображается просто первое, что есть в списке. Главное не щелкайте по этой категории, иначе вернуть категорию обратно будет невозможно :)

Удалю в семействе тот артефакт-стержень и нарисую что-нибудь:

Загружаю в проект — и получаю семейство в категории «Несущая арматура»:

Можно даже сделать спецификацию по категории «Несущая арматура» и проверить, попадает ли оно туда:

Все сваливается в одну спецификацию именно по «Несущей арматуре», отлично! Качайте семейство ifc-арматуры с гугл-диска.

Во второй части добавлю параметры для подсчета такой «арматуры».