понедельник, 22 декабря 2014 г.

Семейства Revit. Подписи в штампе

Много всего произошло с тех пор, когда я писал предыдущий пост в блоге. Однако, сейчас у меня появилась возможность продолжить делиться с вами полезными знаниями и приемами работы с Revit.
Этот пост посвящен вложенным семействам, а точнее - приему их использования для добавления в штамп на листе в Revit т.н. "электронных подписей".
Естественно, это не электронная подпись в смысле ЭЦП, а просто "оцифрованная", т.е. обведенная линией подпись, которую многие проектировщики норовят добавить в штамп, чтобы не расписываться на каждом чертеже. Многие привыкли так работать в AutoCAD, многие заказчики просили меня сделать им подобное в Revit. Этот прием мы разбирали на моем последнем курсе "BIM мастер Revit" (по просьбе слушателей), вопрос о реализации такой задачи поднял Малхозов Павел в группе Revit Architecture во ВКонтакте...
Ну раз уж так много народу хочет знать, как добавить "электронную подпись" к штампу в Revit, с этого я и возобновлю ведение блога после перерыва.
Итак, нужно нечто такое:


За основу возьмем штамп из шаблона Autodesk Community

Далее, используем простой прием:
  • создадим аннотационное семейство, содержащее фамилию и подпись для каждого члена проектной команды
  • загрузим аннотационные семейства в штамп
  • добавим на них параметр выбора
Сразу скажу: сделать так, чтобы вы могли вписать фамилию в строку, а к ней автоматически добавилась подпись - невозможно. Почему - читайте в конце поста, а пока - приступим.

1. На основе шаблона типовой аннотации создадим такое семейство:
Сохраним полученное семейство с именем "!_БЕЗ ПОДПИСИ"

2. На основе предыдущего семейства создадим второе, уже с подписью и фамилией. но для начала выключим видимость линий вспомогательных ячеек:

Затем добавим текст с фамилией и подпись. Подпись рекомендую обводить в AutoCAD, в слое "sign", а потом вставлять в это семейство аннотации файл AutoCAD с подписью.
Сохраним семейство под названием "!_НОВИКОВ"

3. Аналогичным образом создадим все остальные семейства с подписями.

4. Теперь подготовим штамп: откроем семейство основной надписи, откроем группу со штампом и удалим из него все параметры с фамилией:
Затем, загрузим в семейство основной надписи все семейства с подписями. Выберем подпись "!_БЕЗ ПОДПИСИ" и расставим ее по штампу: 
Затем последовательно добавим на каждое семейство подписи параметр "Строка 1", "Строка 2"...."Строка 6"
В итоге должно получиться так:

5. Смотрим, как это работает в проекте:

В общем-то, все. Итоговое семейство для Revit 2015 можно скачать тут:

Осталось пояснить, почему нельзя сделать так: "вписываете фамилию и появляется подпись". Казалось бы, вопрос можно решить формулой с IF. Но не надо забывать, что параметры с фамилиями ("Разработал", "Чертил" и т.п.) относятся к ЛИСТУ, а не к основной надписи. Вообще, системное семейство листа похоже на семейство разреза или фрагмента: основная надпись вложена в него на системном уровне и может только отображать значения параметров листа, но не может быть связана с листом формулами.