根据经纬度画区域python_OpenLayers实现根据经纬度范围在地图上定位并画出区域...

昨天完成了在页面上展现WMS服务地图。

之后的业务是在地图上定位数据的显示区域。用于定位的元数据在新建时会初始化一个经纬度范围,定位的原理是根据这个经纬度范围确定在地图上显示的范围,并将区域用一个矩形框起来。

由于是头一次做地图定位,走了很多的冤枉路。下面把过程记录下来,和大家一起分享。

尝试1:在得到经纬度(四个点,分别是东经,西经,南纬,北纬),根据上述的经纬度取区域中心点的经纬度,然后根据这个中心点的经纬度定位。这期间遇到的问题是显示地图和定位按钮不在同一个frame中,导致了,定位按钮所触发的js函数始终得不到地图的属性。之后改了按钮js函数的调用路径才得以解决。一个很奇葩的路径:

window.parent.frames[‘right’].Location()

下面是尝试1的代码片段:

if(marker != null){

map.display(false); //隐藏上一次的标记

}

//冲map页面获取map的属性值

var lon = (parseFloat(west) + parseFloat(east))/2;

var lat = (parseFloat(south) + parseFloat(north))/2;

var lonlat = new OpenLayers.LonLat(lon,lat);  //得到区域中心点的范围

//alert(lonlat);

map.zoomTo(3);

map.panTo(lonlat);

//定一个Mark层

var markers = new Open

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值