1. 概述
WMTS地圖服務每一層級的分辨率是多少?關於這個問題以前推算過,但總是忘記了。網上查詢又是一堆廢話,現在把這個問題記錄如下。
2. 詳論
WMTS地圖服務有兩種形式的地圖服務,Web墨卡託空間參考(EPSG:3857)下的切片和大地經緯度空間參考(EPSG:4326)下的切片。
2.1. Web墨卡託
我們知道,Web墨卡託是把全球範圍內的座標約束在範圍[-20037508.3427892,20037508.3427892],並且取成正方形。而WMTS的一張瓦片像素寬高爲256像素X256像素,同時第0層就是一張瓦片,那麼其分辨率就很好計算了:
20037508.3427892 * 2 / 256 = 156543.033928
WMTS每一層寬、高依次往下倍增,形成一個四叉樹,那麼分辨率依次增大一倍,也就是分辨率值依次除以2。得到WMTS每一層級的地面分辨率(取6位小數):
層級 | 分辨率(米) |
---|---|
0 | 156543.033928 |
1 | 78271.516964 |
2 | 39135.758482 |
3 | 19567.879241 |
4 | 9783.939621 |
5 | 4891.969810 |
6 | 2445.984905 |
7 | 1222.992453 |
8 | 611.496226 |
9 | 305.748113 |
10 | 152.874057 |
11 | 76.437028 |
12 | 38.218514 |
13 | 19.109257 |
14 | 9.554629 |
15 | 4.777314 |
16 | 2.388657 |
17 | 1.194329 |
18 | 0.597164 |
19 | 0.298582 |
20 | 0.149291 |
21 | 0.074646 |
2.2. 大地經緯度
如果是大地經緯度空間參考下的WMTS,計算分辨率就更加簡單了。我們知道,經度的範圍(X方向)爲[-180,180],緯度(Y方向)的範圍爲[-90,90],恰好是兩倍的關係。爲了保證瓦片像素寬高爲256像素X256像素,很簡單的方法就是讓第一層爲兩張瓦片,左邊經度範圍爲[-180,0],右邊的經度範圍爲[0,180],這樣仍然可以保證地理範圍取成正方形。其分辨率爲:
180/256 = 0.703125
同樣從第一層開始往下四叉樹劃分,得到每一層級的地面分辨率(取10位小數):
層級 | 分辨率(度) |
---|---|
1 | 0.703125 |
2 | 0.3515625 |
3 | 0.17578125 |
4 | 0.087890625 |
5 | 0.0439453125 |
6 | 0.0219726563 |
7 | 0.0109863281 |
8 | 0.0054931641 |
9 | 0.0027465820 |
10 | 0.0013732910 |
11 | 0.0006866455 |
12 | 0.0003433228 |
13 | 0.0001716614 |
14 | 0.0000858307 |
15 | 0.0000429153 |
16 | 0.0000214577 |
17 | 0.0000107288 |
18 | 0.0000053644 |
19 | 0.0000026822 |
20 | 0.0000013411 |
21 | 0.0000006706 |
這個時候有兩個問題需要說明:
- 經緯度的WMTS切片是沒有第0級的,因爲第0級是一個2:1的全球範圍,無法放入一個正方形切片。
- 經緯度的WMTS切片分辨率單位是度,那麼1度等於多少米呢?這個沒有一個準確的定論,只能說一個大概:
其中\(\phi\)表示緯度。