【问题标题】:Get Linked Elements that Appear on Schedule Revit API获取出现在 Schedule Revit API 上的链接元素
【发布时间】:2019-01-08 06:36:57
【问题描述】:

使用 Revit API(2017 及更高版本),有没有办法获取出现在计划中的链接元素列表(包括过滤器、阶段过滤器等)。

目前,如果您使用 FilteredElementCollector 查询 ViewSchedule,它将返回 N 个元素(例如 Windows、门)和 M 个 RevitLinkInstances。但是,RevitLinkInstance 并未列出链接模型中出现的实际元素。有没有办法在 ViewSchedule 范围内的 RevitLinkInstance 中进行查询?或者类似的解决方案?

【问题讨论】:

    标签: api schedule autodesk revit


    【解决方案1】:

    我已经设法通过将 Schedule Id 传递给一个新的 fileteredElementCollector 来使其工作,如下所示:

    schedule = doc.ActiveView
    scheduledElements = list(FilteredElementCollector(doc, schedule.Id))
    
    allElements = []
    
    for element in scheduledElements:
        if element.Category.Name == 'RVT Links':
            linkedElements = list(FilteredElementCollector(element.GetLinkDocument(), schedule.Id))
            for linkedElement in linkedElements:
                allElements.Add(linkedElement)
        else:
            allElements.Add(element)
    
    for element in allElements:
        print element
    

    让我知道这是否也适合你

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-23
      • 2019-10-16
      相关资源
      最近更新 更多