本文在简书的公式编辑器错误,导致内容出错。 请移步 github 查看博文.
本文标题:国内主要地图瓦片坐标系定义及计算原理
本文链接:https://www.haomeiwen.com/subject/ytmyrttx.html
网友评论
Coords:-13, 141, -13, 129, 38, 129, 38, 141, -13, 141
Coords信息如何转换为经纬度坐标?
谢谢!
我公式有个地方写错了: `1` 应该为 `1/2` `,你可以再尝试下。
也可以直接看代码: https://github.com/CntChen/tile-lnglat-transform/blob/master/src/transform-class-slippy.js#L72
如果还有问题,把转换的数据和结果贴出来,我去测试一下。
tileX/ 256和tileY/256,如果tile像素下标从0开始,则下标范围是 [0-255],取 pixelX = 255 得到的 lng < 180;如果tile像素下标从1开始,则下标范围是[1-256],取pixelX=1 得到的 lng > -180
请问博主,这是可允许的误差还是我理解错了?
1. 除数选择 256 应该是没有问题的,因为不管是 0~255 还是 1~256,都是 256 等份;
2. 应该 0~255 是比较合适的,因为前面推算 pixelX 和 pixelY 的公式是向下取整的,所以得到的值是 0~255;
3. 以 level = 0 为例,确实存在 pixelX=255 时 lng < 180, 但是有 tileX=1,pixelX = 0 的情况,此时就是 lng = 180; lng = -180 同理;
4. 像素坐标作为单位的时候,其是有宽度的,数据是跳变的,比如像素点1,像素点0和像素点1的边界到像素点1和像素点2的边界,都属于像素点1,需要根据需求约定采用左边界还是右边界。