因为爬虫需要,如大众点评通过距离获取商铺,以及高德poi获取有数量限制。就想到通过网格的方式,把高德地图拆分成一个一个的格子,获取对应的经纬度,然后通过对应的经纬度去爬取收据。

思路:  

  首先获取城市的边界范围,根据边界画出一个矩形。然后通过 new AMap.LngLat获取相应的点。但是考虑到绘制的会远大于该城市实际范围,在城市内部再绘制一个矩形。外围矩形每五公里拆分一次,内部矩形每公里拆分一次。

主要代码如下

var x1 = new AMap.LngLat(left_lng, left_lat)
var x2 = new AMap.LngLat(right_lng, left_lat)
var y = new AMap.LngLat(left_lng, right_lat)
var center_x1 = new AMap.LngLat(center_left_lng, center_left_lat)
var center_x2 = new AMap.LngLat(center_right_lng, center_left_lat)
var center_y = new AMap.LngLat(center_left_lng, center_right_lat)
var x_distance = x1.distance(x2);
var y_distance = x1.distance(y);
var center_x_distance = center_x1.distance(center_x2);
var center_y_distance = center_x1.distance(center_y);
console.log(x_distance, y_distance)
console.log(center_x_distance, center_y_distance)
drawGrad(x_distance, y_distance);function drawGrad(x, y) {//x,y代表的是距离
var x_total = Math.floor(x / km);//首尾,故点多1
var y_total = Math.floor(y / km);
console.log(x_total, y_total)
for (var i = 0; i < x_total + 1; i++) {for (var j = 0; j < y_total + 1; j++) {let point = southWest.offset(km * i, -km * j)//在内部矩形,则跳过if ((center_left_lng <= point.lng && point.lng <= center_right_lng) && (center_right_lat <= point.lat && point.lat <= center_left_lat)) {continue}pointsObj[i + "_" + j] = point.lng + ',' + point.latif (i > 0 && j > 0) {let last_point = pointsObj[(i - 1) + '_' + (j - 1)];if(!last_point){continue}arrList.push(last_point+ '|' + pointsObj[i + '_' + j])}var bounds2 = new AMap.Bounds(southWest, point)var rectangle2 = new AMap.Rectangle({bounds: bounds2,strokeColor: '#000',strokeWeight: 1,strokeStyle: 'dashed',fillColor: 'transparent',})rectangle2.setMap(map)if (i == x_total && j == y_total) {// console.error(Date.parse(new Date()))
      console.log(arrList.length)console.log(JSON.stringify(arrList))}}
}
}

完整代码已上传GitHub,并上传了辅助找边界的页面。https://github.com/c870275682/gaode_tool

转载于:https://www.cnblogs.com/cjh1111/p/10330310.html

通过网格拆分高德地图相关推荐

  1. 中高德地图只显示某一城市_小O地图 - 城市交通态势数据查询及下载

    小O地图是一款互联网地图数据挖掘.分析.图表软件.具有专业.稳定.高效的特点.提供地图功能多达30余项,并持续更新中. 感兴趣的朋友可以登录官网下载使用 .www.GIS9.com [概述] 本文介绍 ...

  2. 揭秘!文字识别在高德地图数据生产中的演进

    简介:丰富准确的地图数据大大提升了我们在使用高德地图出行的体验.相比于传统的地图数据采集和制作,高德地图大量采用了图像识别技术来进行数据的自动化生产,而其中场景文字识别技术占据了重要位置.商家招牌上的 ...

  3. 根据大小分割大文本_基于深度学习的图像分割在高德地图的实践

    一.前言 图像分割(Image Segmentation)是计算机视觉领域中的一项重要基础技术,是图像理解中的重要一环.图像分割是将数字图像细分为多个图像子区域的过程,通过简化或改变图像的表示形式,让 ...

  4. 【高德地图API】从零开始学高德JS API(六)坐标转换

    摘要:如何从GPS转到谷歌?如何从百度转到高德?这些都是小case.我们还提供,如何将基站cell_id转换为GPS坐标? -------------------------------------- ...

  5. 高德地图实现多天路线规划(途经点显示自定义内容)+轨迹回放(显示车牌)

    ​​​​​​​ 联系作者Q/V:783021975 Tips: 1.高德地图最多支持16个途径点,如果超过可以进行数据优化,或进行数据再次拆分进行规划 先看下效果 HTML代码 记得修改自己的KEY ...

  6. 实用工具|零代码实现高德地图POI数据下载

    1 工具获取方式 点击下面链接,即可获取地理坐标系转换工具 地理坐标系转换工具 2 工具介绍 高德地图POI数据下载工具(下文称该工具)是一款能够让用户在不写代码的前提下实现高德地图POI数据批量下载 ...

  7. 高德地图插件使用汇总(干货-从注册到熟练使用)

    概述 针对公司项目用到的高德地图播件,及用到的方法(缩放层级显示不同层级点.默认点显示.点聚合.定位当前点位置.位置选择获取经纬度). 通用文件 // 说明: JSON文件示例 [[118 94655 ...

  8. 【高德地图API】如何转到高德坐标系?

    摘要:如何从GPS转到谷歌?如何从百度转到高德?这些都是小case.我们还提供,如何将基站cell_id转换为GPS坐标? -------------------------------------- ...

  9. android高德地图后台运行,Android手把手教你集成高德地图

    在上一篇博客上,和大家分享了如何在Android中集成高德定位以及定位的基本使用.今天我们就来看看高德地图在Android中如何使用吧. 同样,我将本篇博客的内容分为如下部分: (1)添加高德SDK ...

最新文章

  1. mongodb和python交互
  2. POJ 2236 Wireless Network 并查集
  3. matlab用辛普森公式求积分_如何用Excel公式求最大值对应的行列序号
  4. nginx实现前后端分离
  5. Ubuntu命令行下安装、卸载、管理软件包的方法
  6. 大端小端区别、Union和Struct的内存分配
  7. 数字滤波器的差分方程和传递函数
  8. CPaintDC 、CWindowDC、 CClientDC、cMemDC、 CDC
  9. 2022届计算机毕业论文(设计)学生选题参考合集推荐收藏
  10. 投影仪与计算机连接方式,电脑与接投影仪、显示器的连接和设置方法
  11. webgl1到webgl2_我如何使用WebGL重建Gorillaz Andromeda音乐视频
  12. [PPPOE]RP-PPPOE脚本分析
  13. 多人协作共享画板——多人画板的bug及分析
  14. UNIX 进程揭秘--进程的生命周期
  15. 使用机器学习数据集构建销售预测Web应用程序
  16. Python爬虫-IP隐藏技术与代理爬取
  17. 微信消息记录导出并制作图云(安卓版)
  18. 职场遭遇“小人”,你如何应对?
  19. 手机自动识别软件项目举例
  20. 区域颜色填充-四连通种子填充算法

热门文章

  1. Java课程设计-仓库管理系统
  2. 如何判断视频的比例(4:3/16:9)和分辨率?
  3. 产品经理(22) #运营
  4. HTML5 CSS3 生日快乐动画网页(粉红色的回忆)
  5. 平安保险公司软件测试机试题
  6. 金蝶、用友等引入凭证导入常见错误分析
  7. Linux 安装字体库-宋体
  8. 音视频编解码基础知识(1)- 音视频编解码过程
  9. Uni App input 手机键盘回车搜索
  10. Flutter _ 状态管理指南篇,Android开发两年