案例库 · 软件与 IT · 技术决策 · 2005–2012
谷歌地图让世界变成方块瓷砖,Web Mercator成为地图标准
谷歌地图2005年的Web Mercator方案——一个方形的世界,256像素2的幂次方瓷砖——成为EPSG:3857,并成为在线地图的事实标准。
谷歌
那一手
2005年,谷歌地图面临一个渲染问题:要在普通网络连接上实现无缝、快速、可缩放的世界地图。其解决方案结合了两个如今被视为理所当然的选择——使用带有球面公式的墨卡托投影,并在北纬约85度附近截断地图,使得投影后的世界恰好是正方形。
有了方形的世界,切块就变成了简单的算术:在缩放级别0,整个地图就是一个256×256像素的瓷砖;每缩放一级,两个轴都翻倍,因此每个瓷砖地址是一对整数,每个缩放级别分辨率翻四倍。瓷砖可以预先渲染、缓存并独立获取——正是这一特性让平移和缩放感觉即时。谷歌自己的文档至今仍描述256×256基础瓷砖和±85度截断,"以使最终地图形状为正方形,从而简化瓷砖选择的逻辑。"
该方案通过兼容性传播开来。EPSG注册表将该投影记录为"WGS 84 / Pseudo-Mercator"(EPSG:3857),范围是"网络地图绘制和可视化",被谷歌地图、OpenStreetMap、Bing、ArcGIS和ESRI使用;Esri甚至在2009年将ArcGIS Online迁移到相同的基于墨卡托的切块方案上,而不是与之对抗。
为什么管用
- 方形的世界让每个瓷砖地址在任何缩放级别都只是简单的整数运算。
- 256×256的2的幂次方瓷砖可以预渲染、缓存和流式传输。
- 每个竞争对手都采用了相同的方案,因此一种投影覆盖了所有网络地图。
- 球面公式在街道级别保持了局部形状和方向的可用性。
可以搬走什么
选择能让工程变简单的投影:一个方形的世界加上2的幂次方瓷砖,将地图流式传输变成整数运算,而兼容性使其成为标准。
后来呢
Web Mercator(EPSG:3857)成为几乎所有在线地图的默认投影——谷歌地图、OpenStreetMap、Mapbox、Bing、CARTO和Esri——而谷歌风格的切块方案成为栅格和矢量瓷砖服务的基准。GIS工具仍然警告不要将其用于面积计算,但用于显示它赢了。
资料来源
- EPSG:3857 — WGS 84 / Pseudo-Mercator
- Map and Tile Coordinates — Maps JavaScript API
- What Is the Web Mercator Projection?
发现哪里写错了?告诉我们。