如何从纬度和经度中找出地图图块坐标?

时间:2015-03-23 19:38:54

标签: mapbox

我正在使用Mapbox矢量切片从后端进程收集特定数据。 在示例中,它们提供了曼哈顿磁贴的链接:

http://a.tiles.mapbox.com/v3/examples.map-zr0njcqy/14/4823/6160.png

作为图块 z / x / y 坐标 14 / 4823 /的 6160

我知道在导航地图时,纬度 40.706119 和经度 -74.017554 的位置在该图块内。

我还从how map works中扣除了使用缩放14,整个地图由16384 x 16384个拼贴块组成,左边是14/0/0拼贴。

然而,将180度纬度和360度经度与总瓦片列和行相比,给出了14/7464/4486,这不是相同的图块。 (除非我没做对吗?)

问题

如何知道纬度和经度的瓷砖坐标?

1 个答案:

答案 0 :(得分:2)

挖掘mapbox-studio源代码我找到了这个小帮手对象:

https://github.com/mapbox/mapbox-studio/blob/5ac2ead1e523b24c8b8ad8655babb66389166e87/ext/sphericalmercator.js

可以像这样使用:

> var a = new SphericalMercator()
> a.xyz([-74.017554, 40.706119], 14)
Object { minX: 4823, minY: NaN, maxX: NaN, maxY: 6160 }

<强> 14 / <强> 4823 / <强> 6160