CAD得到范围内实体(网页版)

时间:2024-01-21 18:50:03

主要用到函数说明:

IMxDrawSelectionSet::Select

构造选择集。详细说明如下:

参数 说明

[in] MCAD_McSelect Mode

构造选择集方式

[in] VARIANT point1

构造择择集时需要使用到的点对象

[in] VARIANT point2

构造择择集时需要使用到的点对象

[in,optional] VARIANT filterData

构造选择集的过滤数据

可以取如下值

mcSelectionSetWindow = 0, mcSelectionSetCrossing = 1, mcSelectionSetFence = 2, mcSelectionSetPrevious = 3, mcSelectionSetLast = 4, mcSelectionSetAll = 5, 选择图面上的所有实体 mcSelectionSetWindowPolygon = 6, mcSelectionSetCrossingPolygon = 7, mcSelectionSetUserSelect = 8 mcSelectionImpliedSelectSelect = 9,_I 返回当前图上已经选择的实体

js中使用如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function SelectWindow()
{
    //实例化一个构造选择集进行过滤,该类封装了选择集及其处理函数。
    var ss = mxOcx.NewSelectionSet();
    //构造一个过滤链表
    var spFilte = mxOcx.NewResbuf();
    //定义两个点的位置
    //定义第一个点的位置
    var vPt1 = mxOcx.NewPoint();
    vPt1.x = -20;
    vPt1.y = -20;
    //定义第二个点的位置
    var vPt2 = mxOcx.NewPoint();
    vPt2.x = 20;
    vPt2.y = 20;
    //选取跨范围的实体
    ss.Select(0, vPt1, vPt2,spFilte);
    for (var i = 0; i < ss.Count; i++)
    {
        var ent = ss.Item(i);
        alert(ent.ObjectName);
    }
}