前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自学HarmonyOS应用开发(50)- 获取瓦片地图数据

自学HarmonyOS应用开发(50)- 获取瓦片地图数据

作者头像
面向对象思考
发布2021-07-15 16:44:23
8480
发布2021-07-15 16:44:23
举报
文章被收录于专栏:C++核心准则原文翻译

本文首先介绍实现地图功能的第一步:获取瓦片地图数据。

瓦片地图原理

读者可以参照文后的链接了解瓦片地图的原理,这里不再重复。简单地说,瓦片地图就是将地图根据缩放层级进行分割,例如缩放层级为3,就表明将地图分为2的3次方行和2的3次方列。知道目标位置的瓦片坐标,就可以获得相应位置的地图数据。

获取地图数据

很多地图服务都提供了使用http协议获取瓦片地图数据的方法。具体可以参照文末的地图瓦片url链接。这里以高德地图为例进行说明:

https://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=2&style=8&x=857&y=391&z=10

该链接是通过高德地图获取大连矢量地图信息的URL。其中x是瓦片的横坐标,y是瓦片的纵坐标,z是缩放层级。以下是获得的地图数据:

获取指定位置的瓦片坐标

可以从经纬度计算出瓦片坐标,计算公式和对应的示例代码可以从【Slippy map tilenames】网页获取:

获取地图数据小工具

为了确认算法和方便调试,作者制作了一个excel形式的小工具。使用这个工具,只要输入经度,纬度和缩放测层级就可以计算出瓦片坐标。

这个工具可以从以下链接下载:

https://github.com/xueweiguo/Harmony/blob/master/StopWatch/LocationToTile.xlsx

参考资料

瓦片地图原理:

https://www.jianshu.com/p/e9e83b427045

高德谷歌腾讯天地图地图瓦片url_吴道简的博客:

https://blog.csdn.net/sinat_41310868/article/details/105959659

Slippy map tilenames(包含各种转换示例代码):

https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 面向对象思考 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档