AutoCAD .Net二次开发之Editor选择集
AutoCAD .Net二次開發之Editor選擇集
- PickFirst選擇集
- 一般選擇集
- 選擇集過濾SelectionFilter
Editor的路徑:
Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor
PickFirst選擇集
Editor.SelectImplied() —獲取命令執行前所選擇的選擇集(PickFirst選擇集)
使用PickFirst選擇集系統變量PICKFIRST必須設置為1
使用PickFirst選擇集的命令必須定義好UsePickSet命令標志
Editor.SetImpliedSelection() —設置PickFirst選擇集
一般選擇集
Editor.GetSelection() —提示用戶從屏幕拾取對象
Editor.SelectAll() —選擇當前空間內所有未鎖定及未凍結的對象
Editor.SelecCrossingPolygon() —選擇由給定點定義的多邊形內的所有對象以及與多邊形相交的對象
邊界多邊形不能自交
Editor.SelectWindow() —選擇完全框入由兩個點定義的矩形內的所有對象
Editor.SelectCrossingWindow() —選擇由兩個點定義的窗口內的對象以及與窗口相交的對象
Editor.SelectWindowPolygon() —選擇完全框入由點定義的多邊形內的對象
邊界多邊形不能自交
!!!
一般選擇集方法,傳入的點被用作為UCS點,如果是其他坐標系下的點坐標,需轉為UCS,再傳入方法;
還有就是,選擇集進行選擇時,所參照的平面是當前視口的方向,也就是用戶觀察模型空間的方向,以這個方向做法線生成的一個平面,已定義好的選擇區域會向這個平面做映射,以這個映射過來的圖形作最終的選擇區域,視口方向為軸,進行選擇。
!!!
這就會導致一個問題,一般選擇集我們不能自由控制選擇的方向,我所采取的解決方法是臨時改變視口方向
選擇集過濾SelectionFilter
TypedValue[] tv = new TypedValue[]{new TypedValue(typeCode,”LINE”)}; SelectionFilter sf = new SelectionFilter(tv);具體請參考https://blog.csdn.net/zhd18/article/details/78726469
總結
以上是生活随笔為你收集整理的AutoCAD .Net二次开发之Editor选择集的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 无人机海洋应用需求分析
- 下一篇: 浙江省现代教育强市要求计算机配套的,《浙