Набор личных C#-инструментов для Autodesk Revit.
Проект собирает add-in MyInstrumentsForRevit, который создает вкладку Мои инструменты в ленте Revit и добавляет команды для настройки графики, работы с видами, фильтрами, осями, листами и быстрыми размерными командами.
src/MyInstrumentsForRevit/App.cs- точка входа add-in.src/MyInstrumentsForRevit/Ribbon- сборка вкладки, панелей и кнопок Revit.src/MyInstrumentsForRevit/Commands- внешние команды Revit.src/MyInstrumentsForRevit/Graphics- сервисы настройки графики видов.src/MyInstrumentsForRevit/Filters- кэш, поиск и применение фильтров видов.src/MyInstrumentsForRevit/DimensionQuickCommands- менеджер быстрых размерных команд и слотыБК1-БК4.src/MyInstrumentsForRevit/Windowsиsrc/MyInstrumentsForRevit/Forms- WPF/WinForms-окна команд.src/ContextFilter.Core- модели и контракты Context Filter.src/ContextFilter.UI- WPF-интерфейс Context Filter.src/ContextFilter.Plugin- отдельный Revit add-in для Context Filter.deploy/Revit2021иdeploy/Revit2022-.addin-манифесты для поддерживаемых версий Revit.scripts- вспомогательные скрипты установки.
Все основные команды находятся на вкладке Мои инструменты.
Отдельный add-in ContextFilter.Plugin добавляет на вкладку Мои инструменты кнопку Context Filter, которая открывает закрепляемую панель справа.
Панель умеет:
- строить дерево элементов по текущему выделению или по видимым элементам активного вида;
- группировать элементы по категории, семейству, типу и параметрам;
- искать элементы и параметры по тексту;
- выбирать и временно изолировать найденные группы в активном виде;
- добавлять группы в
Collector, затем выбирать или изолировать весь собранный набор; - включать предварительный фильтр по основным категориям: несущая арматура, стены, перекрытия, фундаменты и обобщенные модели.
Панель Настройка графики содержит выпадающую кнопку Настройка графики:
Штриховка категорий- переключает настройки стен, перекрытий, несущего каркаса и несущих колонн: выключает штриховку поверхностей/сечений и при повторном запуске возвращает сохраненное состояние активного вида.Вид армирования- применяет пресет вида армирования: основные конструктивные категории получают линии 2, штриховка выключается, категория арматуры показывается.Вид опалубки- применяет пресет вида опалубки: основные конструктивные категории получают линии 4, штриховка выключается, категория арматуры скрывается.Вкл/выкл арматуру- переключает видимость категории несущей арматуры на активном виде.Настроить 3D вид- применяет стандартную настройку к активному 3D-виду: тонированный режим, скрытие областей видимости, уровней и осей.Revit связи- скрывает видимые Revit-связи на активном виде, сохраняет список и при повторном запуске возвращает их обратно.
Панель Работа с видами содержит:
Копия легенд/спец.- дублирует выбранные на листе легенды и спецификации и размещает копии со смещением 30 мм вправо.Копия вида- дублирует выбранные в диспетчере проекта виды с детализацией и размещает их на текущем листе.Дубль листа- дублирует активный лист, основную надпись, параметры, текстовые примечания, виды и спецификации.
Панель Оформление вида содержит:
Оси вида- оформляет оси на текущем плане: запрашивает суффикс осей, выбирает плиту, настраивает область обрезки, скрывает лишние оси фильтром, подрезает выбранные оси и создает размерные цепочки.
Панель Работа с фильтрами содержит:
Обновить фильтры- собирает существующиеParameterFilterElementиз документа и обновляет внутренний кэш быстрого поиска.Добавить на вид- открывает WPF-поиск по кэшу фильтров, добавляет выбранный фильтр на активный вид и позволяет скрыть или показать его.Фильтр по парам.- выбирает элемент, предлагает фильтруемые параметры с заполненными значениями, создает фильтр по выбранному параметру и применяет его к активному виду.
Панель Ускорение оформления содержит выпадающую кнопку Размеры:
Менеджер размеров- открывает менеджер быстрых команд для линейных размеров и элементов узлов.БК1-БК4- запускают сохраненные слоты быстрых команд. Команда назначает нужный тип размера или элемента узла текущим типом по умолчанию и запускает системную команду Revit.
Настройки быстрых размерных команд хранятся в %APPDATA%\MyRevitTools\DimensionQuickCommands\dimension_quick_commands.json.
Панель Команды содержит:
Командная строка- открывает мини-лаунчер команд плагина. Введитеhelp, чтобы увидеть доступные команды.
Пользовательские alias'ы команд хранятся в %APPDATA%\MyInstrumentsForRevit\command-aliases.txt. Путь можно вывести командой alias.path, а перечитать файл - командой alias.reload.
По умолчанию проект собирается с API Revit 2021:
dotnet buildДля Revit 2022, если он установлен локально:
dotnet build -p:RevitVersion=2022Также можно явно передать путь к установленному Revit:
dotnet build -p:RevitInstallDir="C:\Program Files\Autodesk\Revit 2022"- Соберите проект.
- Установите актуальный общий манифест и DLL через скрипт:
.\scripts\Install-RevitAddin.ps1 -RevitVersion 2021 -Configuration DebugДля Revit 2022:
.\scripts\Install-RevitAddin.ps1 -RevitVersion 2022 -Configuration DebugСкрипт копирует сборку в %APPDATA%\Autodesk\Revit\Addins\<версия>\MyInstrumentsForRevit, ставит единый MyInstrumentsForRevit.addin и удаляет старый отдельный ContextFilter.addin.