I’m looking to specify a Dynamo script to use the elements from a pre-determined Revit Selection. Does anyone have any suggestions?
What types of elements and how do you know they’ll always be the same elements (ie: same element numbers)?
I have manually designates 6 Revit Selection sets that all contain only MEP Fabrication Pipework elements.
I’m just looking to call back to one of the 6 sets. After I actually have them specified the script should work.
filters.dyn (6.5 KB)
import clr clr.AddReference('RevitAPI') from Autodesk.Revit.DB import * clr.AddReference('RevitServices') from RevitServices.Persistence import DocumentManager doc = DocumentManager.Instance.CurrentDBDocument view = UnwrapElement(IN) name = IN selection_sets = FilteredElementCollector(doc).OfClass(SelectionFilterElement) user_selection =  for s in selection_sets: if s.Name == name: ids = s.GetElementIds() user_selection = [doc.GetElement(e) for e in ids] OUT = user_selection
The above script retrieves all selection sets in a document and matches a single selection set by name, returning the elements contained within.
Perfect! That is exactly what I was looking for, thank you!!
can i do same thing on “Rule-based Filters”
ex: return all Elements at “Interior filter”
The strategy is a bit different, but I think it is possible. I will give it a shot tomorrow and reply to your original thread.
Thank you very much