Skip to content

Instantly share code, notes, and snippets.

View johnpierson's full-sized avatar
🤡
clowning around

john pierson johnpierson

🤡
clowning around
View GitHub Profile
@johnpierson
johnpierson / adornerSample.cs
Created June 2, 2021 20:43
sample adorner for dynamo
var workspaceView = MonocleViewExtension.view.FindVisualChildren<WorkspaceView>().First();
var canvasAdorner = AdornerLayer.GetAdornerLayer(workspaceView);
canvasAdorner.Add(new CustomAdorner(workspaceView));
import clr
clr.AddReference('System')
from System.Collections.Generic import List
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
from Autodesk.Revit.DB.Structure import *
clr.AddReference('RevitNodes')
import clr
clr.AddReference("RevitNodes")
import Revit
clr.ImportExtensions(Revit.Elements)
clr.AddReference("RevitAPIUI")
from Autodesk.Revit.UI import *
clr.AddReference("RevitServices")
@johnpierson
johnpierson / OpenDocuments.py
Last active June 5, 2020 22:33
This allows you to open a set of documents in python in Dynamo
import clr
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
clr.AddReference('RevitAPI')
import Autodesk
from Autodesk.Revit.DB import *
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
from Autodesk.Revit.DB.Structure import *
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
@johnpierson
johnpierson / GetModelElements.py
Last active July 15, 2024 17:54
This is a python script for Dynamo that allows you to collect all model elements in a Revit model.
#license https://choosealicense.com/licenses/bsd-3-clause/
import clr
# Import DocumentManager and TransactionManager
clr.AddReference("RevitServices")
import RevitServices
from RevitServices.Persistence import DocumentManager
# Import RevitAPI
clr.AddReference("RevitAPI")
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
clr.AddReference('RevitNodes')
import Revit
clr.ImportExtensions(Revit.GeometryConversion)
clr.ImportExtensions(Revit.Elements)
import clr
clr.AddReference("RevitAPIUI")
from Autodesk.Revit.UI import *
dialogContent = "You are about to delete all Fabrication Pipework content from the model. Are you sure?"
buttons = TaskDialogCommonButtons.Yes | TaskDialogCommonButtons.No
#assigning this to a dialog result variable allows us to check what the user selected
dialogResult = TaskDialog.Show('Delete all MEP',dialogContent,buttons)
@johnpierson
johnpierson / RailingToTopo.py
Last active January 7, 2020 15:09
Host railing to topo
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
clr.AddReference('RevitServices')
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
@johnpierson
johnpierson / PrompForSaveApp.cs
Last active May 6, 2024 12:42
This is an example of an application level add-in that would prompt a user to save if they need to when launching dynamo.
#This code is proudly provided under the BSD-3-Clause, https://opensource.org/licenses/BSD-3-Clause
using System;
using Autodesk.Internal.Windows;
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Events;
using Autodesk.Revit.UI;
namespace PromptForSaveOnDynamoLaunch
{