Python 3 for Revit 2022: typeerror: instance property must be accessed through a class insctance

Viewed 95

I`m converting a python 2.7 script to python 3. The script is used in Dynamo for Revit 2022. In 2.7 the code works but in python 3 it gives a typeerror: instance property must be accessed through a class insctance. Can anyone help with this?

def Typenaam_Family(itm):
    Typenaam = []
    Collector_Element_And_Typename = []
    Bcat = itm[0]
    Dict_Element_And_Typename = itm[1]
    Collector = FilteredElementCollector(doc).OfCategory(Bcat).WhereElementIsElementType().ToElements()
        
        
    for itm in Collector:
        
        Typenaam.append(Element.Name.GetValue(itm)) 
            
    Collector_Element_And_Typename.extend(list(zip(Typenaam,Collector)))
        
    for itm in Collector_Element_And_Typename:
        
        Dict_Element_And_Typename[itm[0]] = itm[1]

Benodigde_Categorys = [[BuiltInCategory.OST_Doors,Dict_Door_Element_And_Typename],[BuiltInCategory.OST_PlumbingFixtures,Dict_Plumbing_Element_And_Typename],[BuiltInCategory.OST_Walls,Dict_Wall_Element_And_Typename],[BuiltInCategory.OST_Floors,Dict_Floor_Element_And_Typename],[BuiltInCategory.OST_StructuralColumns,Dict_Kolommen_Liggers_Element_And_Typename],[BuiltInCategory.OST_StructuralFraming,Dict_Kolommen_Liggers_Element_And_Typename]] 
    
for itm in Benodigde_Categorys:
    Typenaam_Family(itm)

I tried

___get___

instead of .GetValue but that didn`t solve.

0 Answers
Related