//с одновременным определением ID типа элемента внутри – не совсем понял. как это можно сделать?//
1) LegendComponents = FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_LegendComponents).WhereElementIsNotElementType().ToElements()
2) LegendComponent.get_Parameter(BuiltInParameter.LEGEND_COMPONENT).AsElementId() # Получили ID типа элемента внутри компонента легенды
попробовал вставить код, получаю ошибку NameError: name ‘LegendComponent’ is not defined. если написать LegendComponentS , то выдает: AttributeError: ‘List[Element]’ object has no attribute ‘get_Parameter’.
есть подозрения по поводу 4 пункта, скорее всего type Id у типа семейства и компонента легенды разные
Добрый день! Вопрос. Используя windowsInProject =FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_Windows).WhereElementIsNotElementType().ToElements() , мы получаем все окна в проекте. Если применить фильтр к ним, например по стадии filtr = windowsInProject.Where(lambda x: x.LookupParameter("Стадия возведения").AsValueString()=="Проект"), на выходе получим элементы в виде Autodesk.Revit.DB.FamilyInstance. Прошу подсказать как их возможно перевести в читабельность?
И еще один вопрос: возможно ли получить Autodesk.Revit.DB.ElementId, если имеем только Id типа(элемента) представленного в формате System.Int64?
PS. На второй вопрос ответ нашел. Нужно входящие элементы анврапнуть и присвоить им команду UnwrapElement(i).GetTypeId().