视频连接v.bimcc.com/course/35/tasks
一、Selection
Pick...是执行命令之后选择
GetElementIds 执行命令之前选中图元,并返回他们的Id
SetElementIds 执行命令后,选中传入Id的图元
1.PickBox
第二个参数是提示字符串。第一个参数是一个枚举类型,如图。
Crossing 指当图元被部分框选的时候即被选中(例如从右下至左上框选)
Enclosing 指当图元被全部框选时才被选中(例如从左上至右下框选)
Dircetional 通过方向来判断。如果是从右至左框选,就是Crossing。如果是从左至右框选,就是Enclosing。
2.PickElementsByRectangle
顾名思义,通过矩形框选图元。常用的构造是PickElementsByRectangle(ISelectionFilter, String)
结合上一节的交互选择可以做出测试代码如图(...代码块将在下一节上线,这一节大家将就用图看一下)
//上一节内容其实也是用到了本节的PickObjects内容
效果如图
3.GetElementIds
添加测试代码
TaskDialog.Show("title", uidoc.Selection.GetElementIds().Count.ToString());
可以显示框选的图元个数。
本章的内容较少,主要是和前一章联系起来,通过过滤器来实现交互选择。
内容重点是了解Selection中一些函数的用法,以及和过滤器的连用方法。