该类用于实现基于元素ID集合的过滤器。
构造函数 | 描述 |
---|---|
public ElementIdSetFilter(IEnumerable<ElementId> elementIds) |
使用指定的元素ID集合创建一个新的ElementIdSetFilter实例。 |
public ElementIdSetFilter(ElementIdSet elementIdSet) |
使用指定的ElementIdSet创建一个新的ElementIdSetFilter实例。 |
属性 | 类型 | 描述 |
---|---|---|
ElementIdSet |
ElementIdSet | 获取或设置元素ID集合。 |
方法 | 返回类型 | 描述 |
---|---|---|
Equals(Object) |
bool | 确定指定的对象是否等于当前对象。 |
GetHashCode() |
int | 用作默认哈希函数。 |
GetType() |
Type | 获取当前实例的 Type。 |
ToString() |
string | 返回表示当前对象的字符串。 |
以下示例演示如何使用ElementIdSetFilter来过滤元素ID集合。
// 使用指定的元素ID集合创建ElementIdSetFilter实例
var elementIds = new List<ElementId>();
elementIds.Add(new ElementId(1));
elementIds.Add(new ElementId(2));
var filter1 = new ElementIdSetFilter(elementIds);
// 使用指定的ElementIdSet创建ElementIdSetFilter实例
var elementIdSet = new ElementIdSet();
elementIdSet.Insert(new ElementId(1));
elementIdSet.Insert(new ElementId(2));
var filter2 = new ElementIdSetFilter(elementIdSet);
// 使用创建的过滤器筛选元素
var collector = new FilteredElementCollector(doc);
var elements1 = collector.WherePasses(filter1).ToList();
var elements2 = collector.WherePasses(filter2).ToList();
此代码将返回一个包含元素ID为1和2的元素列表。