Revit交互选择

视频连接v.bimcc.com/course/35/tasks


一、Selection


Revit交互选择_第1张图片
一般常用的方法

Pick...是执行命令之后选择

GetElementIds 执行命令之前选中图元,并返回他们的Id

SetElementIds 执行命令后,选中传入Id的图元

1.PickBox


Revit交互选择_第2张图片


第二个参数是提示字符串。第一个参数是一个枚举类型,如图。

Crossing 指当图元被部分框选的时候即被选中(例如从右下至左上框选)

Enclosing 指当图元被全部框选时才被选中(例如从左上至右下框选)

Dircetional 通过方向来判断。如果是从右至左框选,就是Crossing。如果是从左至右框选,就是Enclosing。

2.PickElementsByRectangle

顾名思义,通过矩形框选图元。常用的构造是PickElementsByRectangle(ISelectionFilter, String)

结合上一节的交互选择可以做出测试代码如图(...代码块将在下一节上线,这一节大家将就用图看一下)

//上一节内容其实也是用到了本节的PickObjects内容

Revit交互选择_第3张图片

效果如图

Revit交互选择_第4张图片

3.GetElementIds

添加测试代码

TaskDialog.Show("title", uidoc.Selection.GetElementIds().Count.ToString());

Revit交互选择_第5张图片

可以显示框选的图元个数。


本章的内容较少,主要是和前一章联系起来,通过过滤器来实现交互选择。

内容重点是了解Selection中一些函数的用法,以及和过滤器的连用方法。

你可能感兴趣的:(Revit交互选择)