超图的坐标获取问题

最近因为工作原因开始学习超图,对于从来没有接触过前端地图类编程的我,在导师指导下,我先学习 了百度地图,随后进行超图的学习,以下是学习过程中的部分感悟(主要以超图为主)。

超图坐标的获取

超图是没有像百度地图的坐标拾取系统,所以要获取到自己想要的地方坐标系需要自己使用超图文档里提供的api来获取。

1.获取像素坐标从而获取地图坐标

1)首先我们需要创建一个点击事件来获取到你点击目标的像素坐标

map.events.on({
	"click":function(e){
		console.log(e);
	}
})

在控制台你可以找到你点击时的像素坐标
需要注意在这个过程中如果你点击过程中对地图进行了扩大或者缩放,最终所获得的地图坐标都是不准确的,也就是说整个过程中不允许在网页地图上的扩放、缩放以及平移。
那么有人会问,我想要点击的目标点并不在屏幕范围内啊。这个时候我们可以调整Setcenter的zoom参数来控制缩放级别,当屏幕上出现你想要的坐标点时就可以进行操作了。
2)这时你成功获取到像素坐标。我们可以使用getLonLatFromPixel方法将像素坐标转化成超图的地图坐标。

	var pixcel = new SuperMap.Pixel(xxx,xxx);//你获取到的像素坐标
    var value = map.getLonLatFromPixel(pixcel);//转为超图坐标
    console.log(value);//得到超图坐标

2.直接显示超图坐标

这个其实是我偶然查阅文档发现的。相比第一个更简单一些。
直接添加一个显示超图坐标系的控件

map.addControl(new SuperMap.Control.MousePosition());
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值