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的方法,可以根据经纬度,计算出所在级别的地图瓦片,包括在瓦片上的像素信息。

参考文章:
https://github.com/CntChen/tile-lnglat-transform
https://www.amap.com/

相关文章
|
JavaScript 前端开发 关系型数据库
GIS开发:GeoJSON坐标和WKT的转换
GIS开发:GeoJSON坐标和WKT的转换
659 0
|
定位技术
Threejs实现绘制地球,地理位置标注、经纬度转换世界坐标threejs坐标
Threejs实现绘制地球,地理位置标注、经纬度转换世界坐标threejs坐标
1388 0
Threejs实现绘制地球,地理位置标注、经纬度转换世界坐标threejs坐标
|
1月前
|
定位技术 API
GIS开发:自定义坐标系的地图
GIS开发:自定义坐标系的地图
|
1月前
|
算法 定位技术
大地经纬度坐标系与Web墨卡托坐标系的转换
大地经纬度坐标系与Web墨卡托坐标系的转换
20 0
|
4月前
|
存储 Python
GDAL一行代码将投影坐标系转为地理坐标系
【2月更文挑战第24天】本文介绍基于gdal模块,在命令行中通过GDAL命令的方式,将栅格遥感影像的投影坐标系转为地理坐标系的方法~
120 2
GDAL一行代码将投影坐标系转为地理坐标系
|
定位技术 开发工具 数据安全/隐私保护
GIS数据格式坐标转换(地球坐标WGS84、GCJ-02、火星坐标、百度坐标BD-09、国家大地坐标系CGCS2000)
GIS数据格式坐标转换(地球坐标WGS84、GCJ-02、火星坐标、百度坐标BD-09、国家大地坐标系CGCS2000)
1834 1
|
4月前
|
图形学 计算机视觉
GEE错误——如何将原有矢量将维度转化为地理坐标系,重投影坐标坐标无法实现?
GEE错误——如何将原有矢量将维度转化为地理坐标系,重投影坐标坐标无法实现?
53 0
|
4月前
|
编解码 定位技术
ENVI对不含地理参考信息的栅格图像添加地理或投影坐标系信息
ENVI对不含地理参考信息的栅格图像添加地理或投影坐标系信息
基于C#的ArcEngine二次开发41:投影坐标系与地理坐标系接口、方法及示例代码(二)
基于C#的ArcEngine二次开发41:投影坐标系与地理坐标系接口、方法及示例代码
基于C#的ArcEngine二次开发41:投影坐标系与地理坐标系接口、方法及示例代码(二)
|
数据处理 C#
基于C#的ArcEngine二次开发41:投影坐标系与地理坐标系接口、方法及示例代码(一)
基于C#的ArcEngine二次开发41:投影坐标系与地理坐标系接口、方法及示例代码
基于C#的ArcEngine二次开发41:投影坐标系与地理坐标系接口、方法及示例代码(一)