memomem

備忘録・メモ置き場

地図タイル xyz形式

www.trail-note.net

地図は、256×256ピクセルのタイル画像で用意されています。よって、特定の場所の地図を表示する場合は、このタイル画像をつなぎ合わせて表示することになります。

ピクセル座標x,y,zの3つの値が分かれば、タイルの座標も分かります。256ピクセルで1枚ですから、ピクセル座標を256で割った結果(整数値)がタイルの座標になります。

タイル座標が分かれば、その画像が取得できます。国土地理院の標準地図のタイルURLは、

URL:http://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png

となっています。

鍋割山荘を含む、ズームレベル(z) = 16の画像を取得したければ、

タイルX座標(x) = 14873077 / 256 = 58097
タイルY座標(y) = 6620093 / 256 = 25859

となり、
http://cyberjapandata.gsi.go.jp/xyz/std/16/58097/25859.png
の画像を取得すればよいことになります。

実際に取得してみると、以下の画像になります。
右が切れていて分かりづらいですが、1272三角点の右にある建物が、鍋割山荘です。

鍋割山荘※国土地理院提供の地形図を掲載しています。

また、このタイル内の鍋割山荘の位置は、256で割った余りとなります。

タイル内X座標 = 14873077 % 256 = 245
タイル内Y座標 = 6620093 % 256 = 189

左から245pixel、上から189pixelの位置が、鍋割山荘となります。

ちなみに、上の地図の右隣のタイルは、Xが+1されるので
http://cyberjapandata.gsi.go.jp/xyz/std/16/58098/25859.png
です。これを開いてみると、鍋割山荘の文字が見えると思います。

maps.gsi.go.jp