惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Know Your Adversary
Know Your Adversary
N
News and Events Feed by Topic
C
CXSECURITY Database RSS Feed - CXSecurity.com
P
Privacy & Cybersecurity Law Blog
P
Privacy International News Feed
Recent Announcements
Recent Announcements
T
Threatpost
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Last Week in AI
Last Week in AI
博客园 - 叶小钗
AWS News Blog
AWS News Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
Cyberwarzone
Cyberwarzone
月光博客
月光博客
The Cloudflare Blog
罗磊的独立博客
P
Palo Alto Networks Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 聂微东
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
T
Tailwind CSS Blog
PCI Perspectives
PCI Perspectives
Forbes - Security
Forbes - Security
Latest news
Latest news
V
Visual Studio Blog
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
有赞技术团队
有赞技术团队
N
News and Events Feed by Topic
爱范儿
爱范儿
L
Lohrmann on Cybersecurity
Cisco Talos Blog
Cisco Talos Blog
I
Intezer
S
Secure Thoughts
Hacker News: Ask HN
Hacker News: Ask HN
C
CERT Recently Published Vulnerability Notes
TaoSecurity Blog
TaoSecurity Blog
博客园 - 司徒正美
Google DeepMind News
Google DeepMind News
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Google Online Security Blog
Google Online Security Blog
H
Hacker News: Front Page
Recent Commits to openclaw:main
Recent Commits to openclaw:main
V2EX - 技术
V2EX - 技术
Microsoft Azure Blog
Microsoft Azure Blog
O
OpenAI News
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Webroot Blog
Webroot Blog

博客园 - Albert_MIN

在 ASP.NET Core MVC 中,接收数据的几种方式 Content-Type 对应不同的前端数据结构与构造方式 Revit二次开发 钢筋生成API(二) Revit二次开发 钢筋生成API(一) revit二次开发 钢筋布置方式 revit二次开发之 钢筋功能详细分析 Revit Server的注意要配置说明 WCF文件配置服务 WCF服务的各种绑定 Revit二次开发之 对象的隐藏与显示 Revit二次开发之 GeometryObject分析 Revit二次开发之 Material 分析 Revit二次开发之 PolymeshTopology Revit 二次开发之 图纸的导出 Revit开发之 IExportContext接口详细 JavaScript 困惑之 ArrayBuffer JS 困惑之this的指向 Revit二次开发之 族的创建 Revit二次开发 钢筋生成 Revit二次开发之 尺寸标线(二) Revit二次开发之 尺寸标线
revit 二次开发之收集器、过滤器和选择器
Albert_MIN · 2025-03-24 · via 博客园 - Albert_MIN

一、收集器

主要是在文档中,收集出所需要的元素和对象,在revit的定义中,收集器是一个可以迭代的对象。

    1.1 FilteredElementCollector

包含的主要过滤函数

函数名称   函数功能

OfCategory(BuiltInCategory.OST_Doors);

通过类别收集

OfCategoryId(new ElementId(BuiltInCategory.OST_Doors));

通过类别id收集

OfClass(typeof(Wall));

通过类型收集

WherePasses(new RoomFilter());

通过过滤器收集

2、FilteredWorksetCollector工作集收集器

文档中过滤出指定工作集的元素,其代码如下:

函数名称   作用
OfKind 主要是WorksetKind类别的区分
WherePasses(new RoomFilter()); 通过过滤器收集

二、过滤器

过滤器是配合收集器一起工作的,主要是用于更加细致过滤工作,所有的过滤器都继承自ElementFilter,其基本关系如下:

每个过滤器都有自己的作用,这里不细细说,可以参考之前的微博:revit二次开发之 过滤器一 - Min.Xiaoshuang - 博客园

三、选择器 ,主要实现ISelectionFilter 接口实现。

在revit中,通常需要选取指定对象和类型,则需要实现ISelectionFilter接口,相结合在Selection对象中,进行指定构件的选取。

其主要包含两个接口:

AllowElement 允许选取的元素
AllowReference 允许选取的引用