0

pyrevit がホストする ironpython を使用して、すべての型パラメーターのリストを作成しようとしています。次のコードを試しました

from pyrevit import revit, DB

doc =__revit__.ActiveUIDocument.Document
curview = doc.ActiveView

target_category = DB.BuiltInCategory.OST_StructuralColumns
elements = DB.FilteredElementCollector(doc, curview.Id)\
        .OfCategory(target_category)\
        .WhereElementIsNotElementType()\
        .ToElements()

for ele in elements:
    parameters = [i.Definition.Name for i in ele.Parameters]
    orderedParas = [i.Definition.Name for i in ele.GetOrderedParameters()]

print(sorted(parameters))
print(sorted(orderedParas))

との両方ele.Parametersで、ele.GetOrderedParameters()インスタンス パラメータしか生成できませんでした。

インスタンス パラメーターは要素の型パラメーターであると読みました。そこで、ファミリ タイプをキャッチして、上記と同じコードを適用しようとしました。

families =   DB.FilteredElementCollector(revit.doc)\
            .OfClass(DB.FamilyInstance)

for family in families:
        x = family.GetOrderedParameters()
        if family.Name == "C2 300x600":
            for i in x:
                print(i.Definition.Name)

残念ながら、上記のコードはインスタンス パラメータしか生成できませんでした

これを解決するための助けがあれば、深く感謝します

4

1 に答える 1