Найти тему

Revit Lookup и Addin Manager

Оглавление

Сегодня познакомимся с двумя важными надстройками, часто используемыми в работе. Addin Manager — удобный инструмент отладки плагинов, позволяющий избежать многократных перезапусков Revit для устранения ошибок в коде. Revit Lookup — инструмент, позволяющий заглянуть внутрь всего того, что есть в файле Revit, узнать все свойства, методы и всю подноготную любой части модели. Используется и программистами, и обычными пользователями — например, с его помощью можно навсегда бесследно удалить из проекта общий параметр.

Revit Lookup

Для установки программы скачаем .msi-файл по ссылке. На странице нужно отлистать в самый низ и выбрать сборку, соответствующую вашей версии Revit.

После установки программы в Revit появится окно, сообщающее, что найдена новая надстройка. Выбираем в нём "всегда загружать", открываем файл и начинаем работу.

На вкладке "Надстройки" у вас появится новая команда: Revit Lookup. В ней есть несколько функций, давайте рассмотрим некоторые из них: общий принцип у них всех одинаков, различаются только способы взятия элементов или их частей

Команды Revit Lookup
Команды Revit Lookup

Обычно сценарий использования надстройки такой: выбираем элемент, жмём "Snoop Current Selection", а потом изучаем его:

Внешний вид окна Revit Lookup
Внешний вид окна Revit Lookup

Что здесь важно знать:

  • Если строка выделена полужирным, можно кликнуть на неё, и увидеть другой список. Например, если кликнуть на "Parameters", то можно увидеть все параметры элемента, а так же их значения, GUID'ы, и много чего ещё.
  • Красная строка означает, что вызов данного метода или свойства даст исключение на этом элементе. Например, у каждого воздуховода есть свойства Width, Height и Diameter, но у круглых первые 2 будут красными (с исключениями), а у прямоугольного не удастся получить значение свойства Diameter.
  • В Lookup могут быть не все свойства и методы. Если ищете через него решение своей задачи и не видите его, попробуйте внимательнее изучить revitapidocs.com

Функция Snoop DB позволяет рассмотреть все элементы нашего файла, сгруппированные по классам:

Функция Snoop DB.
Функция Snoop DB.

Например, именно так можно удалить общий параметр SharedParameterElement — общий параметр — из проекта, без следов. Как видите, это не просто SharedParameter, но ещё и Element. А значит, можно посмотреть его Id, затем выделить в модели по нему, и удалить. А ещё можно узнать, что у общего параметра есть свои параметры (как у любого элемента)

Через эту функцию удобно искать труднонаходимые вещи, например, базовую точку проекта или внутреннее начало. Или проверять, не появились ли в модели экземпляры новых классов после наших экспериментов с плагинами

Функция Search and Snoop позволяет найти элемент по Id и сразу перейти к его свойствам. Можно сделать это и вручную, выделив элемент и нажав Snoop Current Selection, но так быстрее и иногда удобнее.

С остальными функциями предлагаю вам ознакомиться самостоятельно — принцип работы у них такой же. И не стесняйтесь пользоваться переводчиком, если не понимаете, что означает то или иное свойство или имя класса.

Addin Manager

Эта программа применяется разработчиками плагинов, обычным пользователям она, как правило, ни к чему.

Проблема:

Мы написали плагин и присоединили его к Revit. Запустили, всё хорошо отрабатывает, но в окне вывода опечатка. Мы исправляем её в коде, выполняем сборку, но обновить DLL не можем, так как DLL файл плагина занят Ревитом. Мы закрываем Revit, переносим DLL, запускаем. И всё бы ничего, но иногда процесс исправления ошибки затягивается, и перезапускать Revit приходится много раз, что долго и неудобно. Именно эту проблему решает Addin Manager.

Скачаем программу отсюда. Берём .msi-файл с последней версией и устанавливаем на компьютер. В окне надстроек появится новая команда.

Как с ним работать:

Сначала нужно написать плагин, в котором обязательно должны быть внешние команды (классы, реализующие интерфейс IExternalCommand).

Далее запустим плагин в Manual Mode. В открывшемся окне нажмём Load и загрузим DLL-файл с нашим плагином:

Загрузим плагин
Загрузим плагин

В списке под именем нашего DLL файла появятся все присутствующие в нём внешние команды. Можем выделить любую и нажать Run. Запустим команду из предыдущей статьи:

Результат выполнения команды
Результат выполнения команды

А теперь главное:

При изменении кода мы можем заменить тот файл DLL, на который ссылался Addin Manager. При этом нам уже не надо подгружать его заново. При запуске будет выполнена уже новая версия кода.

Благодаря этому, при отладке плагина можно выполнить огромное множество итераций сборка-запуск-проверка-изменение-сборка, не тратя время на перезапуски Revit.

А на этом всё. В следующей статье мы подробно изучим сайт revitapidocs и научимся использовать его для поиска решения задач.

Мой телеграм-канал, подписывайтесь. До новых встреч!

-6