辽宁平台网站建设哪里好,深圳做服装设计网站的公司,在线做ppt的网站有哪些问题,广州专业网站建设报价过滤器分为选择过滤器与规则过滤器 规则过滤器可以看我之前写的这一篇文章: Revit二次开发在项目中给链接模型附加过滤器
选择过滤器顾名思义就是可以将选择的构件ID集合传入并加入到视图过滤器中,有一些场景需要对某些构件进行过滤选择,但是没有共同的逻辑规则进行筛选的情况…过滤器分为选择过滤器与规则过滤器 规则过滤器可以看我之前写的这一篇文章: Revit二次开发在项目中给链接模型附加过滤器
选择过滤器顾名思义就是可以将选择的构件ID集合传入并加入到视图过滤器中,有一些场景需要对某些构件进行过滤选择,但是没有共同的逻辑规则进行筛选的情况下可以选择使用选择过滤器.
下面是我的代码,增加了截面填充突然与实体填充样式设置的代码: var selectionFilter SelectionFilterElement.Create(doc, OutRange);selectionFilter.SetElementIds(targetElementIds);doc.ActiveView.AddFilter(selectionFilter.Id);var graphics doc.ActiveView.GetFilterOverrides(selectionFilter.Id);graphics.SetCutBackgroundPatternColor(new Autodesk.Revit.DB.Color(255, 0, 0));graphics.SetCutBackgroundPatternId(PatternId(doc));graphics.SetCutForegroundPatternColor(new Autodesk.Revit.DB.Color(255, 0, 0));graphics.SetCutForegroundPatternId(PatternId(doc));doc.ActiveView.SetFilterOverrides(selectionFilter.Id, graphics);doc.ActiveView.SetFilterVisibility(selectionFilter.Id, true);
获取实体填充PatternId的方法一起传上来:
/// summary
/// 获取实体填充ID
/// /summary
/// param namedocument/param
/// returns/returns
private ElementId PatternId(Document document)
{var collector new FilteredElementCollector(document);collector.OfClass(typeof(FillPatternElement));var fillPatternElement collector.First(q (q as FillPatternElement).GetFillPattern().IsSolidFill) as FillPatternElement;return fillPatternElement.Id;
}选择过滤器(SelectionFilterElement Class)的API: