Введение
Представим ситуацию: у вас есть готовая идеальная библиотека семейств, которая отвечает всем требованиям.
Казалось бы что еще нужно? Зачем моделить дальше?
Но, к сожалению, готовая и завершенная мультибрендовая библиотека - недостижимая цель.
Если улучшать семейства уже некуда и все идеи реализованы всегда найдутся семейства, например, вентиляторы, когда нельзя полностью учесть весь каталог сразу и типоразмеры добавляются под каждый подбор от производителя. Или при разработке плагина приходится дорабатывать семейства отопительных приборов по части параметров. Примеров масса.
В этой статье речь пойдет про администрирование уже готовых семейств.
С вступлением в силу в январе 2022 года 331-го постановления правительства Российской Федерации о применении BIM при проектировании объектов с госучастием перед многими проектными организациями будет стоять задача формирования собственной BIM библиотеки элементов (семейств).
В случае с применением Autodesk Revit формировать такую библиотеку крайне желательно основываясь на BIM-стандарте сообщества.
Список требований к семействам Revit для соответствия BIM-стандарту 2.0
Однако BIM-стандарт каждой компании в той или иной степени будет отличаться - это нормально и правильно. Соответственно, семейства тоже могут незначительно отличаться между компаниями.
Касаемо наполнения семейства напишу отдельный цикл статей. Сегодня речь пойдет что же с этими семействами делать дальше, а именно какие требования к организации хранения и администрирования.
Предположим, что у вас уже есть своя библиотека семейств, либо вы находитесь в стадии формирования этой библиотеки.
На самом деле на практике библиотека постоянно расширяется и/или перерабатывается. Как минимум добавляются новые параметры, как максимум семейство перерабатывается полностью, дабы увеличить быстродействие или исправить ошибки.
Встает вопрос как этим всем управлять?!
1. Постановка задачи
Необходимо, чтобы в определенной модели использовались определенные семейства (версии семейства).
Очень надеюсь, что в вашей работе есть паттерны инженерных решений, например: готовые принципиальные узлы обвязки воздухонагревателей приточной установки или узлы армирования приямка.
Тогда, семейство/семейства - это производная технического решения/стандарта/схемы и т.д. Для хранения таких семейств желательны какие-либо атрибуты, но можно и на папочки разбить)
Пример:
Узел обвязки тепловой завесы в производственных зданиях.
Предположим, что он сделан одним семейством с множеством вложенных необщих - геометрических (не попадают в спецификацию) и множеством шариков - общих (попадают), для спецификации и оформления.
А теперь, как это часто бывает, узел поменялся. Причиной изменения могло послужить замена составляющих, ошибка в семействе, изменение геометрии и т.д. Предположим, что в данном случае у производителя обновилась трубопроводная арматура и старую, которая заложена у нас в узле перестают выпускать.
Кратко:
Есть проекты и есть некорректная версия (1) семейства в них. Необходимо заменить некорректные на актуальные (2).
Теперь плавно переходим к проблемам, которые встанут у нас на пути)
2. Возможные проблемы
Необходимо сообщить проектировщику об обновлении семейства. Но как понять кто этот проектировщик, а главное в какие модели он уже успел вставить неактуальную версию семейства (1).
Можно, конечно, заспамить почту всех проектировщиков ОВ, но это такое себе решение - у них и так работы хватает, чтобы каждый раз читать подобные сообщения.
Проблема:
Нужен список загрузок версии семейства в проекты.
Немного усложним: нет необходимости обновлять это семейство во всех проектах. Проекты, которые готовы к выпуску скоро уйдут на стройку и старая арматура еще не успеет закончится на рынке - ее благополучно закупят и не будет проблем. Обновление семейств в этом случае - лишние ТРЗ. Тогда как в новых проектах стоит все таки обновить.
Кратко:
Задача усложнилась.
Есть список проектов (а) в которых остается версия (1) и список проектов (b) в которых ее нужно обновить до версии (2).
Сделаем ситуацию еще более реалистичной. Спустя 2 дня мы обнаружили, что в версии (2) ошибка, мы ее исправили и получили версию (3). Ее точно нужно обновить во всех новых проектах (b), куда она успела попасть.
Вывод:
Нужен статус семейства.
Получается, что нам нужно решить следующие проблемы:
- Логирование вставок версии в проекты.
- Статус версии семейства.
3. Варианты решения
Базовый Revit из коробки не позволяет это сделать.
Логирование вставок семейства поможет не на 100% так как проектировщики могут копировать семейства из одного проекта в другой.
Настоятельно не рекомендую это делать. Семейство при неправильной вставке может превратиться в Франкенштейна, особенно вложенные семейства.
Возможные пути решения от скриптов до использования плагинов с их обзором приведу в следующих статьях.
Спойлер: Revit API не позволяет определить откуда было вставлено семейство через саму модель (через журнал можно).
А как вы решаете эти проблемы? С какими еще сталкивались?