Сторінка вікі OSM ідеально підходить: 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 / π