主要用到函数说明:IMxDrawSelectionSet::Select2
构造选择集。详细说明如下:
参数  | 说明  | 
[in] MCAD_McSelect Mode  | 构造选择集方式  | 
[in] VARIANT point1  | 构造择择集时需要使用到的点对象  | 
[in] VARIANT point2  | 构造择择集时需要使用到的点对象  | 
[in,optional] VARIANT filterType  | 构造选择集的过滤数据的类型  | 
[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中使用如下:
function GetAllComment() {
 
    var  ss = mxOcx.NewSelectionSet();
   var spFilte = mxOcx.NewResbuf();
 
   // 把批注对象,当着过滤条件.
   spFilte.AddStringEx("MxComment,MxDrawXCustomEntity", 5020);
 
   // 得到图上,所有批注对象.
   ss.Select2(5,null,null,null,spFilte);
     
    
   // 遍历每个文字.
   var bFind = false;
   for (var i = 0; i < ss.Count; i++) {
    
       
       var ent = ss.Item(i);
       if (ent == null)
           continue;
       if (ent.ObjectName == "McDbComment") {
           // 得到批注对象。
           mxOcx.Prompt(ent.Text);
 
         var mtxt = mxOcx.NewEntity("IMxDrawMText");
          
         // 把多行文字,变成单行文字,去掉里面的控制符。
         mtxt.Contents  = ent.Text;
          
         // 打碎对像.
         var ret = mtxt.GetProp("ExplodeEx");
 
         // 得到打碎后对像里面的文字。
            var s;
            for(var j = 0; j < ret.Count;j++)
            {
 
                var  obj = ret.AtObject(j);
                if(obj == null)
                    continue;
 
 
         if(s == null){
 
               // s = obj.TextString;
            }
 
         else{
             var s = '';
                s += obj.TextString;
            }
 
               
            }
         mxOcx.Prompt(s);
           //
           mxOcx.Prompt(ent.Position.x.toString());
           mxOcx.Prompt(ent.Position.y.toString());
 
           mxOcx.Prompt(ent.BasePoint.x.toString());
           mxOcx.Prompt(ent.BasePoint.y.toString());
       }
       else if (ent.ObjectName == "MxDrawXCustomEntity") {
           // 得到批注对象。
 
           var stp = ent.GetPoint("First");
 
           var ept = ent.GetPoint("BasePoint");
 
 
 
           var txt = ent.GetString("Text");
          
          
 
           mxOcx.Prompt(txt);
 
           //
           mxOcx.Prompt(stp.x.toString());
           mxOcx.Prompt(stp.y.toString());
 
           mxOcx.Prompt(ept.x.toString());
           mxOcx.Prompt(ept.y.toString());
       }
         
   }
 
}










