首页 > 技术文章 > revit二次开发之 过滤器二FilteredElementCollector收集器

minhost 2021-01-22 18:00 原文

FilteredElementCollector为收集器,其主要就是可以附加各种过滤器对元素进行筛选,并且返回赛选后的结果。以下就是收集器的主要方法:

编号

名称

描述

1

FilteredElementCollector(Document)

构造一个新的FilteredElementCollector,它将搜索和过滤文档中的元素集

2

FilteredElementCollector(Document, ElementId)

构造一个新的FilteredElementCollector,它将搜索和过滤视图中的可见元素。ElementId为视图的Id

3

FilteredElementCollector(Document, ICollection<(Of <<'(ElementId>)>>))

构造一个新的FilteredElementCollector,它将搜索和过滤一组指定的元素。

4

ContainedInDesignOption

添加一个设计选项DesignOption过滤

8

Excluding

添加一个排除的元素集合

9

FirstElement

返回过滤后的第一个元素

10

FirstElementId

返回过滤后的第一个元素的Id

11

GetBasicIEnumerator

返回遍历集合的枚举数

12

GetElementCount

返回元素的数量

13

GetElementIdIterator

返回元素Id的迭代器

14

GetElementIterator

返回元素的迭代器

15

GetEnumerator

获取当前的迭代器

20

IntersectWith

将此收集器中通过筛选器的元素集与另一个收集器中通过筛选器的元素集相交。

21

IsViewValidForElementIteration

Identifies if the particular element is valid for iteration of drawn elements.

22

OfCategory

添加类别过滤

23

OfCategoryId

添加类别Id过滤

24

OfClass

添加类过滤

25

OwnedByView

添加视图过滤

26

ToElementIds

返回所有的过滤元素Id

27

ToElements

返回所有的过滤元素

30

UnionWith

过滤器之间并集

31

WhereElementIsCurveDriven

添加一个ElementIsCurveDrivenFilter到集合

32

WhereElementIsElementType

添加一个WhereElementIsElementType到集合

33

WhereElementIsNotElementType

添加一个WhereElementIsNotElementType到集合

34

WhereElementIsViewIndependent

添加一个WhereElementIsViewIndependent到集合

35

WherePasses

附加新的过滤器

推荐阅读