您的位置:首页 > 其它

怎样获得当前地图的比例尺和X、Y坐标?(SO开发)

2012-04-01 09:49 309 查看
       这个问题困扰了我好几天,终于在今天被我无意中做出来了,写出来分享一下。

       对于如何获得当前地图的比例尺?

       我们都知道axsupermap有一个ViewScale属性,该属性主要是设置当前地图的比例尺,也就是为1/原始比例尺。我们可以充分的利用这个属性来获得我们想要的答案——显示当前地图的比例尺。即“当前的比例尺为:”+“1:”+1/axsupermap.ViewScale。

       对于如何获得当前的地图的X、Y坐标?

       我们这里讨论的是地理坐标的获取,其它的在这里就不介绍了。我们都知道axsupermap中有两个方法来获得地理坐标,一个是PixelToMapX,另一个是PixelToMapY,这两个方法的作用是将一个点在像素空间中的列号转换为地理坐标 ,返回转换后的 坐标。所以要实现获得当前地图的X、Y坐标,这两个方法是必须要用到的。第一步,我们必须要先实例化点对象(soPoint);第二步,我们要获得点X、Y的地理坐标,即使用上面提到的axsupermap的两种方法;第三步,直接输出坐标。关键代码如下所示:

            soPoint objpoint = new soPoint();

            objpoint.x = axSuperMap1.PixelToMapX(e.x);

            objpoint.y = axSuperMap1.PixelToMapY(e.y);

            uiStatusBar1.Panels[2].Text = "X=" + Convert.ToString(objpoint.x) + "米" + "," + "Y=" + Convert.ToString(objpoint.y) + "米";

      这样我们就完成了怎样获得当前地图的比例尺和X、Y坐标了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: