Найти тему

pyRevit. Как создать свою кнопку в Revit.

Сегодня мы с вами создадим свою вкладку, свою панель и свою кнопку в пару кликов. Все это благодаря pyRevit (дальше "пай").

В общих чертах о данном плагине писал тут

В начале была папка.

Создать пользовательское расширение в пай легко. Нужно лишь создать правильную струкруру папок остальное на себя возьмет пай

Для начала предлагаю выбрать какую-то папку, куда мы будем в последствие добавлять все нами написанные кнопки.

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

Для статьи я выберу папку просто на рабочем столе: C:\Users\chttm\OneDrive\Рабочий стол\TEST\

Открываем папку TEST идем по пунктам:

.extension

Нам нужна папка с окончаем .extension.

Это сообщит pyRevit, что у нас внутри есть структура папок расширений.

Создаем папку с именем "МоеРасширение.extension"

💡.extension - специальное окончание в имени папки, так пай будет понимать, что это расширение.

💡МоеРасширение - произвольное имя, оно не будет фигурировать в самом ревите

.tab

Внутри МоеРасширение.extension создадим папку "МояВкладка.tab"

💡.tab - специальное окончание, которое ускажет паю, что эту папку надо рассматривать как вкладу ревита

💡“МояВкладка” - имя вкладки. Оно отобразится в ревите.

Вкладки
Вкладки

.panel

Перейдем в “МояВкладка.tab” и создадим папку МояПанель1.panel

💡.panel - специальное окончание, которое укажет паю, что содежимое этой папки надо поместить на отдельную панель.

💡МояПанель1 - имя панели.

Это панели
Это панели

.pushbutton

Наконец, нам нужно создать кнопки.

Перейдем в папку МояПанель1.panel и создадим папку "МояПростоКнопка.pushbutton"

💡.pushbutton - специальное окончание, которое укажет паю, что эта папка должна стать кнопкой.

💡"МояПростоКнопка" - имя кнопки, если нет иного указания имени.

Кнопка
Кнопка

Внутри этой папки должен находится:

  • "script.py" - скрипт.
  • 💡Мы можем называть наши скрипты как угодно, лишь бы в конце стоял script.py.
  • например: Supernatural_script.py
  • icon.png - иконка. Не обязательно
  • 💡максимальный размер 96x96 пикселей.
  • bundle.yaml - файл методанных. Не обязательно
  • 💡Удобный способ задать имя, контекст, описание, автора и многое другое для кнопки
Структура кнопки
Структура кнопки

У нас получится такая структуру папок:

-МоеРасширение.extension

—МояВкладка.tab

—-МояПанель1.panel

——МояПростоКнопка.pushbutton

——-script.py

——-icon.png

Пример структуры расширений
Пример структуры расширений

Поздравляю вас, первая кнопка создана.

Теперь подключим наше расширение в ревиту.

Как подключать расширения

Об этом пишу здесь.

Пишем первый скрипт.

Так же вынес это в отдельную статью.

Читаем здесь:

Хочу еще кнопок

Вот статья посвещенная различным типам кнопок

Ресурсы

Заключение

Спасибо за внимание.

Подписывайтесь пожалуйста на этот дзен и тг: