Ссылки
Мой ТГ, чтобы не пропустить ничего.
А тут собраны остальные статьи по пай
Введение
Многие посты про pyRevit (далее «пай») просто говорят, что есть такой плагин и там есть полезные кнопки. Это в целом правда, но это лишь верхушка айсберга.
Давайте попробуем разобраться что он еще умеет
Добавление своих кнопок
Для того что бы на панели Ревита появилась твоя личная вкладка достаточно в папку extension по пути поместить следующую структуру
—Extension
——МоеРасширение.extension
———МоеНазваниеВкладки.tab
————ИмяМоейПанели.panel
—————ИмяМоейКнопки.pushbutton
——————script.py
——————icon.png
Перезагружаем панель (ПАНЕЛЬ, НЕ РЕВИТ!) и вуаля наша кнопка отобразилась.
Нет никаких сборок, манифестов и прочего, что нужно для того что бы отобразить свою вкладку используя шарп. Пай все взял на себя. Да это не путь тру прогера, но и мы координаторы а не программисты.
Я специально пометил белым .extension, .tab и прочее, пай ищет эти указатели чтобы правильно сформировать структуру.
А теперь мы можем открывать файл script.py и удобно писать код. После чего активировать кнопку на панели и сразу проверять как оно работает. Это безумно удобно! Кстати, окно, используемое в пай для вывода информации, (принты текста, ошибки, таблицы и прочее) в случае ошибки указывает строчку на которой она произошла.
В более всем знакомом RevitPythonShell такой функции нет, и очень сложно было отлавливать ошибки.
Ко всему прочему кнопки могут быть разные и по разному расположены: условно если мы нашу кнопку MyButton.pushbutton поместим в папку папка.stack то сможем по другому сформировывать панель. Или можно сменить тип кнопки .smartbutton .pulldown .urlbutton
Читаем тут.
Все добавляется и удаляется без потребности перезапускать ревит. Просто нажимаем Reload на вкладке pyRevit.
Готовые интерфейсы и формы
Заботливые разработчики пай поместили кучу готовых форм как для ввода, вывода информации так и ее визуализацию
А если нам станет мало заготовок, можем подключить к нашим скриптам .xmal и отрисовывать пользовательские интерфейсы.