Autodesk.Revit.DB.FilteredWorksetIdIterator
是Revit API中的一种类型,它用于迭代Revit中的工作集ID。FilteredWorksetIdIterator类提供了一种轻松访问工作集ID的方式,这是一些Revit API的其他部分所必需的。
FilteredWorksetIdIterator通过一个过滤器来筛选工作集列表,该过滤器可用于使用WherePasses方法创建。FilteredWorksetIdIterator还提供了在枚举过程中返回当前工作集ID的方法。
使用FilteredWorksetIdIterator,可以方便地访问选定的工作集列表,例如,将所选工作集中的所有元素的处理限制为特定的工作集子集,或者将元素的颜色或房间名称与特定工作集的名称相关联。
//创建FilteredWorksetIdIterator
FilteredWorksetIdIterator filteredWorksetIdIterator = new FilteredWorksetIdIterator(document, new[] {WorksetId.InvalidWorksetId});
//使用WherePasses创建过滤器
ElementId myWorksetId = new ElementId(12345678);
filteredWorksetIdIterator = new FilteredWorksetIdIterator(document, new[] {WorksetId.InvalidWorksetId}.WherePasses(worksetId => worksetId.Equals(myWorksetId)));
//枚举过程中返回当前工作集ID
if (filteredWorksetIdIterator.MoveNext())
{
WorksetId currentWorksetId = filteredWorksetIdIterator.Current;
//.....
}