Hi all,
I am trying to get all the parameters of aspecific element.
for instance, how can I get all the parameters of a “Doorcollector”
DoorsCollector = FilteredElementCollector(revit.doc).\
OfCategory(BuiltInCategory.OST_Doors).\
WhereElementIsNotElementType().\
ToElements()
I was thinking of doing a long list of LookupParameter but is not dynamic and will not pic inforamtion outside the set of LookupParameter that I am writing.
what will be your aproach of this tasks?
I had a look at this Retrieving provider parameters for a category
but is not what I want to retrieve.
I would like to have something like:
Mark : ZZ-IDR-03.143-1
Comments : Bar
worksets: Interior
etc. etc
thank you again for the support,
greeting,
Gian Claudio S.
@Gian_Claudio ,
this code worked very well… you can modify it for your purpose
import os, sys, datetime
from Autodesk.Revit.DB import *
from Autodesk.Revit.UI import *
from Autodesk.Revit.DB.Architecture import *
import time
# pyRevit
from pyrevit import forms, revit, script
# .NET Imports
import clr
clr.AddReference('System')
from System.Collections.Generic import List
# List_example = List[ElementId]()
from Autodesk.Revit.DB import *
import System
doc = __revit__.ActiveUIDocument.Document
time_start = time.time()
# 🏓 get doors
all_elements = FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_Doors).WhereElementIsNotElementType().ToElements()
src_element = list(all_elements)[0]
# Create a List of Parmaeter Names
p_names = [p.Definition.Name for p in src_element.Parameters]
# Select Parameter
sel_p_name = forms.SelectFromList.show(p_names, button_name='Select Item')
for el in all_elements:
p = el.LookupParameter(sel_p_name)
if p:
if p.StorageType == StorageType.String:
value = p.AsString()
print('Element[{}] {}: {}'.format(el.Id, sel_p_name, value))
time_end = time.time()
duration = time_end - time_start
print("\n The code took {} seconds to run.".format(duration))
# ✅END
I want to add some references for people who would looking for additional references:
https://thebuildingcoder.typepad.com/blog/2018/05/getting-all-parameter-values.html#5
Why don’t you use forms.select_parameters()
?
Cheers.
Joris.
1 Like