Autodesk.Revit.DB.ElementIsCurveDrivenFilter是Revit API提供的用于筛选曲线驱动元素的筛选器之一。曲线驱动元素是指那些由曲线所控制的元素,如曲线梁、曲线墙等。
public ElementIsCurveDrivenFilter(bool invert)
invert: 若值为false,则筛选结果为曲线驱动元素;若值为true,则筛选结果为非曲线驱动元素。
一个ElementIsCurveDrivenFilter实例,用于筛选曲线驱动元素。
以下示例演示如何使用ElementIsCurveDrivenFilter筛选曲线驱动元素:
// 获取所有曲线驱动元素
FilteredElementCollector col = new FilteredElementCollector(document);
ElementIsCurveDrivenFilter filter = new ElementIsCurveDrivenFilter(false);
IEnumerable<Element> curveDrivenElems = col.WherePasses(filter);
// 获取所有非曲线驱动元素
FilteredElementCollector col2 = new FilteredElementCollector(document);
ElementIsCurveDrivenFilter filter2 = new ElementIsCurveDrivenFilter(true);
IEnumerable<Element> nonCurveDrivenElems = col.WherePasses(filter2);
ElementIsCurveDrivenFilter实例传递给FilteredElementCollector或FilteredElementCollector.OfCategory等方法中才能实现筛选。invert参数为true可以获取所有非曲线驱动元素。