Dynamo for Revit — это мощный инструмент визуального программирования, который позволяет пользователям создавать собственные сценарии и автоматизировать различные задачи в Autodesk Revit. Одним из распространенных требований при работе с Dynamo является программное получение имен узлов. В этой статье мы рассмотрим несколько методов достижения этой цели, а также примеры кода. Итак, приступим!
Метод 1: использование встроенного свойства «Имя».
Самый простой способ получить имя узла в Dynamo — напрямую обратиться к его свойству «Имя». Вот пример фрагмента кода:
# Assuming you have a node reference stored in 'node'
name = node.Name
Метод 2: использование узла Element.Name
Dynamo предоставляет встроенный узел под названием «Element.Name», который может извлекать имя любого элемента Revit, включая узлы. Вот как вы можете его использовать:
# Assuming you have a node reference stored in 'node'
name = Element.Name(node)
Метод 3: доступ к библиотеке узлов Dynamo
Dynamo имеет богатый API, который позволяет получить доступ к ее библиотеке узлов и получить подробную информацию о каждом узле, включая его имя. Вот пример фрагмента кода:
# Assuming you have a node reference stored in 'node'
nodeLibrary = DocumentManager.Instance.CurrentDBDocument.GetDynamoModel().Workspace.NodeLibrary
name = nodeLibrary.GetNodeFromWorkspace(node.GUID).Name
Метод 4. Навигация по рабочей области Dynamo
Вы можете перемещаться по рабочей области Dynamo и получать имена узлов, используя коллекцию «Узлы» рабочей области. Вот пример фрагмента кода:
# Assuming you have a node reference stored in 'node'
name = node.Name
Метод 5: использование узла сценария Python Dynamo
Если вы работаете в узле сценария Python в Dynamo, вы можете получить доступ к имени узла с помощью свойства IN[0].Name
. Вот пример:
# Assuming you're working within a Python script node
name = IN[0].Name
Получить имена узлов в Dynamo for Revit можно различными способами в зависимости от конкретного варианта использования. Хотите ли вы получить прямой доступ к свойствам, использовать встроенные узлы или использовать API Dynamo, эти методы обеспечивают гибкость и удобство. Используя эти методы, вы можете улучшить рабочие процессы Dynamo и оптимизировать задачи автоматизации Revit.