Web墨卡托投影

**Web 麥卡托投影**（英語：Web Mercator）是麥卡托投影的一種變體，被 Web 地圖應用業界普遍採納。2005 年，隨著 Google 地圖的採用，這一標準開始嶄露頭角。 幾乎所有主要的線上地圖提供商都使用這一標準，包括 Google 地圖、Mapbox、Bing 地圖、OpenStreetMap、MapQuest、Esri 等等。其正式的 EPSG 識別碼是 EPSG:3857，不過歷史上也曾使用過其他識別碼。

## 性質

Web 麥卡托是麥卡托投影地圖的一個輕微變體，主要用於基於 Web 的地圖程式。對於小比例尺地圖，它與標準的麥卡托用的公式一樣。但 Web 麥卡托在所有比例尺下都使用球面公式，但大比例尺的麥卡托地圖通常使用投影的橢球面形式。這種差異在全球比例尺下是察覺不到的，但會導致局部地區的地圖稍微偏離同一比例尺的真正的橢球面麥卡托地圖。離赤道越遠，這種偏差就越明顯，在地面上可以達到 40 km。

雖然 Web 麥卡托的公式是麥卡托的球面形式，但地理坐標必須得以 WGS 84 橢球面基準獲得。此差異會導致投影略微不符合正形投影。人們普遍對 Web 麥卡托與標準麥卡托的不同認識不足，導致了相當多的混亂和誤用。出於所有這些原因，美國國防部通過美國國家地理空間情報局宣布任何正規用途都不可以使用這個地圖投影。

### 公式

Web 麥卡托的公式與標準球面麥卡托的公式基本相同，但是在應用縮放之前，將「世界坐標」調整為使得左上角為 (0, 0)，右下角為 (256, 256)：

　
: ${\begin{aligned}x&=\left\lfloor {\frac {256}{2\pi }}2^{\text{zoom level}}(\lambda +\pi )\right\rfloor {\text{ pixels}}\\[5pt]y&=\left\lfloor {\frac {256}{2\pi }}2^{\text{zoom level}}\left(\pi -\ln \left[\tan \left({\frac {\pi }{4}}+{\frac {\varphi }{2}}\right)\right]\right)\right\rfloor {\text{ pixels}}\end{aligned}}$

其中 _λ_ 是用弧度表示的經度，而 _φ_ 是用弧度表示的大地緯度。

因為麥卡托將極點投影在無窮遠處，所以使用 Web 麥卡托投影的地圖無法顯示極點。Google 地圖之類的服務會在南北緯 85.051129° 切斷覆蓋。這不會對街道地圖造成什麼影響，因為這些服務的主要目的不在於顯示完整的地球。85.051129° 這個值是能讓整個投影地圖變成正方形的緯度，在 _y_ = 0 的情況下計算為 _φ_ 就會得到：

　
: ${\begin{aligned}\varphi _{\text{max}}=\left[2\arctan(e^{\pi })-{\frac {\pi }{2}}\right]\end{aligned}}$

### 球面與橢球面的混合

這個投影既不是嚴格的橢球面，也不是嚴格的球面，EPSG 的定義說這個投影「使用橢球坐標系的球面演化」。 它是建立在地球表面的 WGS84 橢球面模型定義的地理坐標上的，但在投影的時候卻仿佛坐標是定義在球面上的。 這種做法對於小比例尺的地圖（例如整個世界）是沒有爭議的，但是在大比例尺地圖（例如城市或省份）中卻很少有先例。

### 優點和缺點

Web 麥卡托是一個球面麥卡托投影，因此它具有與球面麥卡托相同的屬性：不管在哪，北都在上方；子午線都是等距的垂直線，角度在局部是正確的（假設是球面坐標），而且面積會隨著離赤道越來越遠而膨脹，以至於極地區域被嚴重誇大。橢球面麥卡托具有同樣的屬性，但是它將地球類比為一個橢球體。

然而，與橢球面麥卡托不同的是，Web 麥卡托並不十分符合正形投影。這意味著地面上線條之間的角度，繪製到地圖中角度會發生變化，儘管它們不會偏離到肉眼可以察覺的程度。由於 Web 麥卡托指定了在 WGS 84 橢球面模型上給出的測量坐標，因此會有偏離。通過將測量坐標投影到球面上，角度關係會發生輕微的變化，就像在一個球面上測量一樣。這是標準球面麥卡托投影法的標準做法，但與 Web 麥卡托不用的是，球面麥卡托通常不用於局部區域的地圖，例如街道地圖，因此繪圖所需的位置精度通常小於使用球面公式引起的角偏差。Web 麥卡托的好處在於，球面形式的計算比橢球面形式的計算簡單得多，因此只需要一小部分計算資源。

## 辨識碼

由於 EPSG 註冊通過遲緩，Web 麥卡托有了好幾個不同的空間參考系辨識碼（SRID），包括 EPSG:900913、EPSG:3785 和 EPSG:3857。

### EPSG:900913

該投影坐標參考系最初缺少一個官方的 SRID，OGP 的地理資訊學委員會（又名 EPSG）的大地測量小組委員會拒絕提供一個 SRID，並稱「我們已經審查了微軟、Google 等公司使用的坐標參考系統，並認為它在技術上有缺陷。我們不會為了收錄這些不適當的大地測量和製圖，而降低 EPSG 資料集的價值。」 非官方的代碼「EPSG:900913」（Google 轉寫為數字）開始被使用。它最初由 Christopher Schmidt 在他的 Technical Ramblings 部落格中定義，並在 OpenLayers 2 中進行了編碼，從技術上講，它將使 OpenLayers 成為 SRID 權威。

### EPSG:3785

2008 年，EPSG 提供了官方辨識碼 EPSG:3785，其官方名稱為「Popular Visualisation CRS / Mercator」，但指出「它不是一個正式的大地測量系統」。 該定義使用了地球的球面（而非橢球面）模型。

### EPSG:3857

當年晚些時候，EPSG 提供了一個更新的辨識碼 EPSG:3857，其正式名稱為「WGS 84 / Pseudo-Mercator」。 該定義轉換為使用 WGS84 橢球面（EPSG:4326），而不是使用球面。

雖然這一投影與 Google 密切相關，但在 EPSG 的標準里，把微軟列為了「資訊來源」。

### 其他辨識碼

其他使用過的辨識碼有 ESRI:102113、ESRI:102100 和 OSGEO:41001。

ESRI:102113 對應於 EPSG:3785，而 ESRI:102100 對應於 EPSG:3857。

## WKT 定義

該投影覆蓋了經度從−180° 到 180°，南北緯 85.05° 之間的地球。使用**坐標參考系的知名文字表示**（well-known text representation of coordinate reference systems，簡稱 WKT），EPSG:3857 定義如下：

```
PROJCS["WGS 84 / Pseudo-Mercator",
    GEOGCS["WGS 84",
        DATUM["WGS_1984",
            SPHEROID["WGS 84",6378137,298.257223563,
                AUTHORITY["EPSG","7030"]],
            AUTHORITY["EPSG","6326"]],
        PRIMEM["Greenwich",0,
            AUTHORITY["EPSG","8901"]],
        UNIT["degree",0.0174532925199433,
            AUTHORITY["EPSG","9122"]],
        AUTHORITY["EPSG","4326"]],
    PROJECTION["Mercator_1SP"],
    PARAMETER["central_meridian",0],
    PARAMETER["scale_factor",1],
    PARAMETER["false_easting",0],
    PARAMETER["false_northing",0],
    UNIT["metre",1,
        AUTHORITY["EPSG","9001"]],
    AXIS["X",EAST],
    AXIS["Y",NORTH],
    EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext  +no_defs"],
    AUTHORITY["EPSG","3857"]]
```

## 參考文獻