Autodesk.Revit.DB.ElementMulticlassFilter
是一种 Revit API 中的筛选器类型,用于筛选多种元素类别。
Autodesk.Revit.DB.ElementMulticlassFilter
public ElementMulticlassFilter(IEnumerable<Type> types)
根据元素类别类型列表创建元素多类筛选器。
public IEnumerable<Type> Classes { get; set; }
获取或设置元素类别类型列表。
// 创建元素多类筛选器,筛选墙、楼板、梁
ElementMulticlassFilter filter = new ElementMulticlassFilter(new List<Type>()
{
typeof(Wall),
typeof(Floor),
typeof(Beam)
});
// 在文档中查找符合筛选器条件的所有元素
FilteredElementCollector collector = new FilteredElementCollector(document);
List<Element> elements = collector.WherePasses(filter).ToList();
以上示例中创建了一个元素多类筛选器,指定了需要筛选的元素类别:Wall
(墙)、Floor
(楼板)和 Beam
(梁)。
然后,使用 FilteredElementCollector
类查找文档中符合筛选器条件的所有元素,并将结果存储在 List<Element>
类型的变量 elements
中供后续使用。
Classes
属性是可写的,可以动态修改筛选器中的元素类别类型列表。