Скрипт поиска элементов в модели Ревит

Простой скрипт по поиску на примере помещений.

На первом этапе выбираем все помещения в проекте, через выбор категории в раскрывающемся списке нода Categories:

выбор всех помещений в Revit

Помещения в больших проектах удобно находить по номеру. Для этого на втором этапе скрипта у каждого помещения получаем его номер — значение параметра с именем номер. Используем нод GetParameterValueByName, к которому подключается список выбранных помещений, а также имя параметра в ноде String (для удобства этот нод переименован по двойному клику мышки, с названием «Ввод имени параметра».

определение номеров помещений с помощью Dynamo

Для возможности выбора помещений по номеру нам необходим нод ввода такого номера. Он будет называться «Ввод значения параметра» и представлять собой также переименованный нод String (строка). Значение этого нода подаётся в нод сравнения двух переменных, в одну из которых подаётся список полученных номеров всех помещений, а в другую — введённое значение номера помещения, которое мы ищем. Таким образом, скрипт сравнивает номер каждого помещения с введённым нами номером и при их совпадении выдаёт значение True (правда).

Остальные значения в этом списке будут False (ложь). Список этих значений в свою очередь подаётся в нижний приёмный слот нода фильтрации списков List.FilterByBoolMask, а в верхний слот подключается список самих элементов — в данном случае, помещений.

выбор конкретного помещения по номеру

Для вывода конкретного помещения по номеру, подключаем в вывод нода фильтрации in нод просмотра Watch. И при вводе какого-либо номера помещения в созданный нами нод «Ввод значения параметра» и запуске скрипта, в ноде просмотра появится выбранное помещение, с подсвеченным зеленым цветом номером id.

удобный способ найти и открыть на виде помещение по номеру

По двойному клику на подсвеченный зеленый текст, на виде Revit откроется нужное помещение. Для удобства работы со скриптом, желательно оформить его, сгруппировав ноды по группам, с выделением цветов (для этого используется контекстное меню по правой кнопке).

Группирование нодов Динамо по функциональным группам