Доброго времени суток! На данный момент передо мной стоит своеобразная задача: для нашей организации мы решили перелопатить полностью всю базу материалов и создать свою отдельную с параметрами, которые мы сами зададим. Провёл небольшое исследование на предмет того к каким свойствам материалов возможно добраться через ноды:
Как видно – далеко не ко всем. Если до тех свойств, до которых можно добраться – можно установить с помощью нода Element.SetParameterByName, то до остальных, очевидно, необходимо добираться с помощью Python’а. Создание материалов необходимо делать через API:
import clr
clr.AddReference("RevitAPI")
clr.AddReference("System.Core")
import System
clr.ImportExtensions(System.Linq)
from Autodesk.Revit.DB import
import Autodesk
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
TransactionManager.Instance.EnsureInTransaction(doc)
Material.Create("Name")
TransactionManager.Instance.TransactionTaskDone()
В связи со всем вышесказанным возник вопрос: как корректно добраться до свойств материалов через Python? И возможно ли будет впринцепе установить все свойства материалов через Python?