微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

GIS开发中如何使用开源库计算经纬度坐标和瓦片坐标

这篇文章主要介绍GIS开发中如何使用开源库计算经纬度坐标和瓦片坐标,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

使用github的开源库,根据经纬度坐标和地图的缩放级别,计算地图瓦片的编号,从而获取到范围内的地图切片。  
开源库地址:  
https://github.com/CntChen/tile-lnglat-transform
“  高德/百度/谷歌/腾讯/必应的地图经纬度坐标和瓦片坐标相互转换”
基于JavaScript的库,使用这个可以做什么呢,最常见的就可以爬取地图切片,那些地图下载器的抓取地图切片也是这个原理。
在nodejs中,用npm安装一下这个包,就可以用了。  
npm install --save  tile-lnglat-transform
以计算高德地图的为例:
定义:

const TileLnglatTransform = require('tile-lnglat-transform');

将经纬度转换成切片编号的方法:  

const  tileinfo = 

 TileLnglatTransform.TileLnglatTransformGaode.lnglatToTile(lng,lat,level);

tileinfo .tileX;地图当前级别瓦片的横向编号;

tileinfo .tileY,;地图当前级别瓦片的纵向编号;

将某个地图级别瓦片上的像素坐标,转换经纬度坐标,地图瓦片大小一般是256*256,pixelX,pixelY是在此切片上的相对像素值,假如想算一个切片的坐标范围,只需要根据相对像素调整即可。

const  lnglat = 

 TileLnglatTransform.TileLnglatTransformGaode.pixelToLnglat(pixelX, pixelY, tileX, tileY, level);

此外,还有lnglatToPixel的方法,可以根据经纬度,计算出所在级别的地图瓦片,包括在瓦片上的像素信息。

以上是“GIS开发中如何使用开源库计算经纬度坐标和瓦片坐标”这篇文章的所有内容,感谢各位的阅读!希望分享内容对大家有帮助,更多相关知识,欢迎关注编程之家行业资讯频道!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐