Я скопировал скрипт Dynamo от блоггеров для создания воздуховода в Revit, но он не запускается. введите здесь описание изображения
введите здесь описание изображения
Есть ли какие-то глупости, которые я пропустил?
Я скопировал скрипт Dynamo от блоггеров для создания воздуховода в Revit, но он не запускается. введите здесь описание изображения
введите здесь описание изображения
Есть ли какие-то глупости, которые я пропустил?
У меня была аналогичная ошибка из-за пропущенного импорта зависимостей. У меня также возникла ошибка при попытке выбрать конкретный тип воздуховода, поэтому я оставил его пустым, и Revit API выберет для нас первый. Я смог заставить его работать с аналогичным подходом:
См. файл Dynamo: Dynamo Add Duct .dyn image
import clr
# Import RevitNodes
clr.AddReference("RevitNodes")
import Revit
#import Revit DB
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
#import Revit Creation where Create.Duct is
from Autodesk.Revit.Creation import *
clr.ImportExtensions(Revit.GeometryConversion)
# Import Revit elements
from Revit.Elements import *
# Import DocumentManager
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
import System
#The inputs to this node will be stored as a list in the IN variables.
doc = IN[0]
x = IN[1].ToXyz()
y = IN[2].ToXyz()
ductType = IN[3]
#ductTypeUnwrapped = UnwrapElement(ductType) #not working
# Start Transaction
TransactionManager.Instance.EnsureInTransaction(doc)
doc.Create.NewDuct(x, y, ductType); #if DuctType is null then Revit picks first type.
# Stop Transaction
TransactionManager.Instance.TransactionTaskDone()
OUT = doc