不同的实体它的坐标属性不一样,比如直线就是开始点,和结速点属性,圆的就是中心点坐标和半径属性。所以要得实体的坐标,需要判断对象类型,然后再转换成具体的对象,再读取它的坐标。
控件提供的计算对象最小外包的函数:GetBoundingBox,详见:http://www.mxdraw.com/help/IMxDrawEntity__GetBoundingBox@[out]_IMxDrawPoint__@[out]_IMxDrawPoint__.htm
下面js代码,得到对象最小外包矩形框坐标:
var  ent = mxOcx.GetEntity("选择实体");
if (ent == null)
    return;
var pt1Ob = mxOcx.NewPoint();
var  pt2Ob = mxOcx.NewPoint();
// 得到最小外包。
var  points = ent.GetBoundingBox2();
ent.Close();
var pt1Ob = points.Item(0);
var pt2Ob = points.Item(1);
if(pt1Ob != null && pt2Ob != null)
{
    // 成功得到。
    var app = mxOcx.NewComObject("IMxDrawApplication");
    app.ZoomWindow(pt1Ob.x,pt1Ob.y, pt2Ob.x,pt2Ob.y);
 
    alert(pt1Ob.x);
    alert(pt1Ob.y);
    alert(pt2Ob.x);
    alert(pt2Ob.y);
     
}
来源:https://www.cnblogs.com/yzy0224/p/12016485.html