限制百度地图拖动范围限制,当超如范围时自动返回

背景
最近利用百度离线地图加载世界地图,但发现下载的区域只是世界地图一块,当拖动地图范围超过想要的范围时,就会出现背景块为白色;
如图

解决思路1:百度api开发小案例中给出的方案

<script type="text/javascript">  layer.msg('将地图显示范围设定在指定区域,地图拖出该区域后会重新弹回');//百度地图API功能 var map = new BMap.Map("map_demo");map.centerAndZoom(new BMap.Point(116.404, 39.915), 8);map.enableScrollWheelZoom();var b = new BMap.Bounds(new BMap.Point(116.027143, 39.772348),new BMap.Point(116.832025, 40.126349));try {   BMapLib.AreaRestriction.setBounds(map, b);} catch (e) {alert(e);}
</script>

问题:这种在拖动中依然可以移除范围,看到边界外白色区域。
解决思路2:根据地图拖动事件,判断地图拖动的范围和中心点,当地图可视范围超过切片范围时,重新定位中心点和层级,保证在范围内的边界。

var extent=new Object();extent.minX="-180.380133";extent.maxX="177.557674";extent.minY="-80.395352";extent.maxY="86"; map.addEventListener("dragging",function(type, target){if(extent.minY>this.getBounds().getSouthWest().lat){if(type.currentTarget.ef.lat<-61.888492){centerAndZoom(this.getBounds().getCenter().lng,-85.2670845,this.getZoom());}};if(extent.maxY>this.getBounds().getNorthEast().lat){if(type.currentTarget.ef.lat>78.437445){centerAndZoom(this.getBounds().getCenter().lng,85.2670845,this.getZoom());}}});

通过不断计算和测试中心点确保地图查看全球地图都是在切片范围内的。

限制百度地图拖动范围限制,当超如范围时自动返回相关推荐

  1. 百度地图拖动标注后获取坐标

    本来想用图吧的API来做的,结果弄了下,在手机上弄不了.换用百度地图了..本功能个人觉得在很多地方用到,先记下来,省得每次都得翻地图API文档一点一点弄. 功能表现为: 地图一开始打开就定位到你的附近 ...

  2. Android studio百度地图SDK开发 2020最新超详细的Android 百度地图开发讲解(3) 路线规划步行骑行驾车路线规划

    2020最新超详细的Android 百度地图开发讲解(3) 路线规划步行骑行驾车路线规划 开发前配置,显示基本地图,实时定位等查看之前代码,此博客紧接上一博客:https://blog.csdn.ne ...

  3. android 百度地图拖动定位,百度地图获取定位,实现拖动marker定位,返回具体的位置名...

    body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑"; ...

  4. php百度地图定位到街道,百度地图拖动标注输出当前定位坐标及街道信息

    百度地图Demo var map = new BMap.Map("container");//初始化地图 map.addControl(new BMap.NavigationCon ...

  5. Android studio百度地图SDK开发 2020最新超详细的Android 百度地图开发讲解(6) POI检索, 根据地址输入提示检索 Sug

    POI检索, 根据地址输入提示检索 Sug 参考百度地图官方文档:http://lbsyun.baidu.com/index.php?title=androidsdk/guide/search/sug ...

  6. html百度地图拖动,百度地图为marker添加拖拽事件

    百度的API里面并没有,但是百度的好多方法都和谷歌地图的类似,参照谷歌地图写法,写了一个简单拖拽事件 body, html,#allmap {width: 100%;height: 100%;over ...

  7. 百度地图API公交检索示例 - 标绘结果路线、返回结果集

    百度地图API具有公交检索功能:使用它的在线SDK示例来修改代码,快速演示一下: <html> <head><meta http-equiv="Content- ...

  8. 仿百度外卖3_7_1百度地图拖动定位,显示附近地址poi提示搜索

    前页:这里用到的sdk包就不介绍了在百度api里面去下载就好了,然后就正式看对mapview的使用以及拖动地图控件时候对地图中间的红色箭头的处理. 1.先看下当前页面的布局文件:R.layout.ac ...

  9. android studio百度地图教程,Android studio百度地图SDK开发 2020最新超详细的Android 百度地图开发讲解(4) 路线规划之起始点地址输入实现规划...

    实现起始点输入的路线规划 要实现输入起始点的路线规划,需要两个输入框,可以将两个输入框设置在和地图同一个Activity中,也可以新建一个Activity,来实现地址的输入,然后通过页面之间的跳转来传 ...

最新文章

  1. Javascript 中的神器——Promise
  2. pandas删除dataframe列名称中包含特定字符串的数据列(dropping columns contains specifiec substring in dataframe)
  3. Last_Error: Relay log read failure: Could not parse relay log event entry.
  4. PAT甲级1030 Travel Plan (30分):[C++题解]dijkstra求单源最短路、保存路径
  5. .NET打包工具怎么注册 .dll文件??
  6. 思考:固态硬盘的普及,是否影响到了存储引擎的设计?
  7. CF1486B Eastern Exhibition
  8. 01.神经网络和深度学习 W3.浅层神经网络(作业:带一个隐藏层的神经网络)
  9. Power BI 数据可视化软件实现共享报表
  10. 高通全系列手机处理器深度解析 (升级选手机必备)附参数对比表
  11. 【Java】总结Java数组的拷贝和输出
  12. redhat修改mysql编码格式_RedHatLinux下修改MySQL编码方式
  13. Android 网络学习之获取服务器的图片
  14. [附源码]Java计算机毕业设计SSM餐厅订餐系统
  15. 简单详细叙述FpGrowth算法思想(附python源码实现)
  16. ai钢笔工具怎么描线_AI描图工具及钢笔工具的使用技巧
  17. 转载:技术大停滞——范式春梦中的地球工业文明3:范式春梦外的阴影
  18. 免费的局域网文档协作办公方式—onlyoffice文档协作
  19. 笨笨图片批量抓取下载 V0.2 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程]...
  20. 耦合(六种)与 内聚(七种)—《软件工程与计算》笔记

热门文章

  1. 10053 事件详解
  2. JavaScript中slice()、splice()、split()、join()、unshift()、push()
  3. 常用离散、连续分布及期望、方差总结
  4. 度量学习 度量函数 metric learning deep metric learning 深度度量学习
  5. OpenGL shader笔记
  6. NVL()、NVL2() 函数的用法
  7. 关于Vue渐进式框架的理解
  8. process_begin: CreateProcess(...) failed.
  9. createprocess函数的参数说明:
  10. MIME类型,Content-Type