WMTS:以给定的缩放级别将地理位置(纬度,经度)转换为图块索引吗?


15

我想知道如何获取给定地理位置(纬度,经度)和缩放级别的WMTS磁贴的索引(x,y)。

例如,我的POI位于(48.675,2.7),我想获取缩放10的相应开放街道地图图块。

我可以算算吗?我需要网络服务吗?精度:我必须以编程方式执行此操作。


2
在这里,您可以前往:wiki.openstreetmap.org/wiki/…–
约翰·鲍威尔,

关于Bing地图切片方案的有用的MSDN文章也提供了很好的入门。本文和OSM文章均假定使用Web Mercator投影,但是其他投影坐标系统的原理相同。
凯斯2015年

Answers:


22

OSM Wiki页面非常完美:http : //wiki.openstreetmap.org/wiki/Slippy_map_tilenames#Lon..2Flat._to_tile_numbers_2

这是提取的答案(以伪代码形式),供快速参考。

给定经度/纬度/缩放图块编号:

n = 2 ^ zoom
xtile = n * ((lon_deg + 180) / 360)
ytile = n * (1 - (log(tan(lat_rad) + sec(lat_rad)) / π)) / 2

请注意,log()在此伪代码中指的是自然对数(在常用数学语法中通常为“ ln()”,但在许多编程语言中通常为“ log()”)。

给定图块编号到经度/纬度:

n = 2 ^ zoom
lon_deg = xtile / n * 360.0 - 180.0
lat_rad = arctan(sinh(π * (1 - 2 * ytile / n)))
lat_deg = lat_rad * 180.0 / π

2
等待,OSM滑动格式是WMTS切片格式吗?
间谍

5
需要注意的是链接上面有实现语言!(目前为27)
Cyrille
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.