Компоненты легенды

Главная Форумы Задать вопрос Компоненты легенды

В этой теме 19 ответов, 4 участника, последнее обновление  Анатолий 1 неделя, 1 день назад.

Просмотр 5 сообщений - с 16 по 20 (из 20 всего)
  • Автор
    Сообщения
  • #8405 Score: 0

    Legantmar
    Хранитель
    449 pts

    //с одновременным определением ID типа элемента внутри – не совсем понял. как это можно сделать?//

    1) LegendComponents = FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_LegendComponents).WhereElementIsNotElementType().ToElements()
    2) LegendComponent.get_Parameter(BuiltInParameter.LEGEND_COMPONENT).AsElementId() # Получили ID типа элемента внутри компонента легенды

    по поводу zip списка гугли (вот например, http://dynamobim.ru/forums/topic/помогите-вытащить-марку-провода-из-па/#post-8346)

    #8406 Score: 0

    Serge
    Участник

    попробовал вставить код, получаю ошибку NameError: name ‘LegendComponent’ is not defined. если написать LegendComponentS , то выдает: AttributeError: ‘List[Element]’ object has no attribute ‘get_Parameter’.

    есть подозрения по поводу 4 пункта, скорее всего type Id  у типа семейства и компонента легенды разные

    #8407 Score: 2

    Legantmar
    Хранитель
    449 pts
    #8418 Score: 0

    Serge
    Участник

    Большое СПАСИБО!!! Потребовалось время, но я разобрался. Спасибо за терпение :)

    #8419 Score: 0

    Анатолий
    Участник
    14 pts

    Добрый день! Вопрос. Используя
    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().

Просмотр 5 сообщений - с 16 по 20 (из 20 всего)

Для ответа в этой теме необходимо авторизоваться.