Autodesk.Revit.DB.FilterCategoryRule是Revit API中的一部分,它代表了一个过滤器类别规则,用于根据Revit元素的类别进行过滤。
Autodesk.Revit.DB.FilterCategoryRule有两个构造函数,分别如下:
FilterCategoryRule(ElementId categoryId, bool inverted)
FilterCategoryRule(Category category, bool inverted)
其中,categoryId
或category
参数代表要过滤的Revit元素的类别,inverted
参数代表是否反转过滤,即过滤掉符合规则的元素。
CategoryId
:获取或设置该规则要过滤的Revit元素的类别ID。Category
:获取或设置该规则要过滤的Revit元素的类别。Inverted
:获取或设置是否反转该规则的过滤结果。Clone()
:创建该规则的副本。使用以下代码以创建一个过滤器类别规则并过滤出所有标高:
ElementId levelCategoryId = new ElementId(BuiltInCategory.OST_Levels);
FilterCategoryRule levelCategoryRule = new FilterCategoryRule(levelCategoryId, false);
FilteredElementCollector collector = new FilteredElementCollector(document);
collector.WherePasses(levelCategoryRule);
List<Element> levels = collector.ToElements().ToList();