Сфера проектирования вышла на новый уровень с появлением BIM-технологий. Помимо стандартных «коробочных» решений, во многих САПР реализована возможность использования API для расширения базового функционала инструментов.
Эта возможность изменила даже состав специальностей, участвующих в проектировании. В крупных компаниях существуют целые команды разработчиков, задача которых — создание плагинов. В небольших компаниях, благодаря доступности и развитому комьюнити, также любой из продвинутых специалистов (проектировщиков, BIM-координаторов) может написать свой собственный плагин для решения рутинных задач.
Основные цели автоматизации проектирования — это сокращение трудозатрат проектировщиков и улучшение качества финального продукта.
Внедрение автоматизации стало доступным, но как ее внедрять, чтобы она была поддерживаемой и расширяемой? Что делать, когда плагинов становится слишком много? А если проблемы качества кода и его структуры становятся актуальными? Если над разработкой таких плагинов теперь работает не один человек, а целая команда? И кто такой Октавиан?
Одна из причин этих сложностей ясна: при внедрении BIM нет общего видения, как должна выглядеть система целиком. Многие разработчики плагинов не обладают опытом разработки до того, как начинают их писать. Часто отсутствуют технически подкованные коллеги, которые смогут научить и спроектировать структуру «на берегу».
С такими проблемами мы и столкнулись в нашей команде проектной автоматизации ПИК — и пришли к созданию своего фреймворка ReactiveBIM, который уже несколько лет показывает себя с хорошей стороны.
Чтобы не вводить в заблуждение: слово «Reactive» не имеет отношения к реактивному программированию, а подчеркивает ускоренное погружение новых специалистов в разработку плагинов для автоматизации BIM-моделирования.
ReactiveBIM — это платформа с открытым кодом для разработки плагинов для CAD/BIM программного обеспечения. Эта платформа предлагает разработчикам надежную структуру проекта, внедрение зависимостей, легкую настройку, удобное ведение журналов, автоматизацию сборки пакетов и многое другое.
Хотим рассказать про наш опыт и про ReactiveBIM подробнее, а также спросить вас, читателей, мнение о нашей работе. Возможно, наш проект заинтересует вас, и вы захотите принять участие в развитии opensource продукта.
В статье будет рассматриваться только часть фреймворка для Revit, но функционал включает в себя также поддержку Autocad.
Приятного чтения!