Skip to content

Instantly share code, notes, and snippets.

@johnpierson
Created July 13, 2022 14:46
Show Gist options
  • Save johnpierson/c3c7bb767ff765ff9e44d08a2aa8e9a4 to your computer and use it in GitHub Desktop.
Save johnpierson/c3c7bb767ff765ff9e44d08a2aa8e9a4 to your computer and use it in GitHub Desktop.
This is an all-in-one boilerplate template for making a python node in Dynamo
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
from Autodesk.Revit.DB.Structure import *
clr.AddReference('RevitAPIUI')
from Autodesk.Revit.UI import *
clr.AddReference('System')
from System.Collections.Generic import List
clr.AddReference('RevitNodes')
import Revit
clr.ImportExtensions(Revit.GeometryConversion)
clr.ImportExtensions(Revit.Elements)
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
uidoc=DocumentManager.Instance.CurrentUIApplication.ActiveUIDocument
#Preparing input from dynamo to revit
element = UnwrapElement(IN[0])
#Do some action in a Transaction
TransactionManager.Instance.EnsureInTransaction(doc)
TransactionManager.Instance.TransactionTaskDone()
OUT = element
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment