天天看點

CAD二次開發——過濾選擇(2)

學習資料:

  詳見:CADVBA中的選擇集過濾及DXF組碼表 。

     CAD中的選擇集過濾----有條件選擇AutoCAD實體 (二) 。

學習案列:

//GetSelection()使用者在圖形中選擇實體
            //SelectAll()選擇所有實體
            //SelectCrossingWindow()選擇視窗中及和視窗四邊形相交的實體
            //SelectCrossingPolygon選擇多邊形中及和多邊形相交的實體
            //SelectFence欄選
            //SelectImplied選擇目前圖形中已選擇的實體
            //SelectPrevious選擇上一個選擇集
            //SelectWindow選擇視窗中的實體
            //SelectWindowPolygon選擇多邊形中的實體
            //SelectLast選擇圖形中最後繪制的實體
            //選擇直線或圓
            Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
            Database db = doc.Database;
            Editor ed = doc.Editor;
            TypedValue[] values = new TypedValue[] {
            new TypedValue((int)DxfCode.Operator,"<OR"),
            new TypedValue((int)DxfCode.Start,"CIRCLE"),
            new TypedValue((int)DxfCode.Start,"LINE"),
            new TypedValue((int)DxfCode.Operator, "OR>")
            };
            SelectionFilter filter = new SelectionFilter(values);
            PromptSelectionResult psr = ed.GetSelection(filter);