Autodesk.Revit.DB.ElementPhaseStatusFilter是Revit API中的一个类,用于过滤元素在不同阶段的状态。
该方法用于创建一个ElementPhaseStatusFilter对象,其中ElementId参数表示要过滤的元素的ID,ElementOnPhaseStatus表示过滤元素的状态(Active、Demolished或NewConstruction)。
以下示例代码演示了如何使用ElementPhaseStatusFilter来获取在Active阶段活动的墙:
FilteredElementCollector collector = new FilteredElementCollector(doc);
ElementPhaseStatusFilter activeFilter = new ElementPhaseStatusFilter(ElementId.InvalidElementId, ElementOnPhaseStatus.Active);
ICollection<Element> activeWalls = collector.OfCategory(BuiltInCategory.OST_Walls)
.WhereElementIsNotElementType()
.WherePasses(activeFilter)
.ToElements();