WebGIS中的坐标系和瓦片地图

本文主要介绍坐标系和瓦片地图的相关知识, 他们是进行WebGIS开发的基础。

1 坐标系

坐标系分为地理坐标系和投影坐标系,他们的定义如下:
地理坐标系(Geographic Coordinate System):
    是使用三维球面来定义地球表面位置,以实现通过经纬度对地球表面点位引用的坐标系。包括角度测量单位、本初子午线和参考椭球体三部分。

投影坐标系(Projection Coordinate System):
    是使用基于X,Y值的坐标系统来描述地球上某个点所处的位置。它由地理坐标系和投影方法两个要素所决定。

1.1 地理坐标系

旋转椭球体

    地球表面是崎岖不平的,人们为了精确表示地球表面的位置,引入了旋转椭球体的概念。即用一个规则的旋转椭球体去逼近真实的地球表面。一个旋转椭球体的参数主要有以下三个:长半轴、短半轴、扁率。定义了这三个参数,也就唯一确定了一个旋转椭球体。

旋转椭球体

大地基准面

    定义了椭球体的形状后,还需要确定椭球体的位置。椭球体表面与真实地球表面存在差异,并且在世界的不同地区,这种差异也不尽相同。因此椭球体的定位直接决定了地理坐标与真实位置的误差。椭球体定位就是需要确定大地基准面,从而确定椭球体与地球的相对位置。有以下两类大地基准面:

  • 地心基准面:由卫星数据得到,使用地球的质心作为原点,如如CGCS2000、WGS84。
  • 区域基准面:特定区域内与地球表面吻合,旋转椭球体表面上的点与地球表面上的特定位置相匹配,但椭球的中心不与地球质心重合而是接近地球质心。例如Beijing54、Xian80。

    确定了旋转椭球体的形状位置,那么地理坐标系的基础就确定了。接下来需要定义地球上任意一点的地理坐标表示方法。

地理坐标

    地理坐标,就是用经纬度表示地面点位的球面坐标。在大地测量学中,对于地理坐标系统中的经纬度有三种提法:天文经纬度、大地经纬度和地心经纬度。其中使用较多的是大地经纬度,其使用大地坐标(L,B,h)表示地面点在椭球面上的位置三个要素,他们的定义如下:

  • 大地经度L:参考椭球面上某点的大地子午面与本初子午面间的二面角
  • 大地纬度B:为参考椭球面上某点的法线与赤道平面的夹角,北纬为正,南纬为负
  • 大地高h:从观测点沿椭球法线方向到椭球面的距离

图示:


大地坐标.jpg

    这样就完成了地理坐标系的定义,地球上任意一点都能获得经纬度坐标了。

1.2 投影坐标系

    在椭球面上表示的地球上物体的坐标,会给实际使用带来一些麻烦。更多的时候我们希望将地物展现在平面上,这时就需要引入投影坐标系的概念。

地图投影

    在地球椭球面和平面之间建立点与点之间函数关系的数学方法,称为地图投影
    地图投影的一般公式为:x = F(λ,φ), y = G(λ,φ)
    确定了投影方法后,也就确定了函数F和G,只要知道地面点的经纬度(λ,φ),便可以在投影平面上找到相对应的平面位置(x,y)。

投影方法有以下几类:

  • 按变形性质分类:
    • 等角投影:角度变形为零(Mercator)
    • 等积投影:面积变形为零(Albers)
    • 任意投影:长度、角度和面积都存在变形
  • 按投影面类型划分:
    • 圆柱投影:投影面为圆柱
    • 圆锥投影:投影面为圆锥
    • 方位投影:投影面为平面
  • 按投影面与地球位置关系划分为:
    • 正轴投影:投影面中心轴与地轴相互重合
    • 斜轴投影:投影面中心轴与地轴斜向相交
    • 横轴投影:投影面中心轴与地轴相互垂直
    • 相切投影:投影面与椭球体相切
    • 相割投影:投影面与椭球体相割
投影

常用的投影方法

  • UTM投影
        UTM投影全称为"通用横轴墨卡托投影",是一种"等角横轴割圆柱投影",椭圆柱割地球于南纬80度、北纬84度两条等高圈,投影后两条相割的经线上没有变形,而中央经线上长度比0.9996。

  • 高斯—克吕格投影(Gauss-Kruger)
        高斯-克吕格投影,是一种“横轴等角切圆柱投影”,中央经线没有变形,不在中央经线上的点,长度比均大于1。且离开中央经线越远,长度变形越大。

    以上两种方法都要进行分带投影。即按一定的间隔选取经线作为投影的中央经线,中央经线两侧一定范围内的地区按所选中央经线进行投影。这样做的目的是减小投影变形,方便在工程中使用。

  • 墨卡托投影(Mercator Projection)
        墨卡托投影,是一种“正轴等角圆柱投影”,假想一个与地轴方向一致的圆柱切或割于地球,按等角条件,将经纬网投影到圆柱面上,将圆柱面展为平面后,即得本投影。该投影具有等角航线被表示成直线的特性,故广泛用于编制航海图和航空图等。其缺点是在两极的变形严重。

具体的投影方法请点击小标题查看。

    选择一个地理坐标系,以及一个地图投影方法,就唯一确定了一个投影坐标系,从而可以使用平面坐标表示地球上物体的位置了。

1.3 WebGIS中常用的坐标系

    在Web地图领域,使用最为广泛的坐标系统就是WGS84 Web Mercator。谷歌地图、Virtual Earth、Bing Maps、百度地图、Mapabc、ArcGIS Online等都是采用这种坐标系。作为一个投影坐标系,需要两个基本的要素,一个是地理坐标系,还有一个是投影方法。我们分别来看:

WGS84 Web Mercator的地理坐标系

    从名字可以看出,WGS84 Web Mercator坐标系采用的地理坐标系是WGS84坐标系,它属于地心坐标系,坐标系的原点位于地球质心,其基本参数如下:

GCS_WGS_1984
WKID: 4326 Authority: EPSG
Angular Unit: Degree (0.0174532925199433)
Prime Meridian: Greenwich (0.0)
Datum: D_WGS_1984
Spheroid: WGS_1984
Semimajor Axis: 6378137.0
Semiminor Axis: 6356752.314245179
Inverse Flattening: 298.257223563

WGS84 Web Mercator的投影方法

    从名字上可以看出,WGS84 Web Mercator坐标系的投影方法和Mercator(墨卡托)投影有关,但是这个投影方法和不是标准的墨卡托投影。他们之间的区别在于,WGS84 Web Mercator在投影时将地球椭球当做圆球看待,这会导致本来是等角投影的墨卡托投影变得不再等角了,而是近似等角,也就是出现角度变形。

WGS84 Web Mercator的坐标范围

    以赤道为标准纬线,以本初子午线为中央经线,分别得到X轴和Y轴。两者的交点设为原点,规定纬度向北为正,向南为负;经度向东为正,向西为负。

  • X轴:由于赤道半径为6378137米,则赤道周长为2πR = 2*20037508.3427892,因此X的取值范围是:[-20037508.3427892,20037508.3427892]。
  • Y轴:由墨卡托投影的公式可知,当纬度φ接近两极,即90°时,y值趋向于无穷。因此规定Y的取值范围与X一致,也为[-20037508.3427892,20037508.3427892],也就是形成了一个正方形。

对应于经纬度的范围就是:

  • 经度: [-180, 180]
  • 纬度: [-85.051128779,85.051128779]

1.4 EPSG

    讨论坐标系不得不提到EPSG,EPSG的英文全称是European Petroleum Survey Group,中文名称为欧洲石油调查组织。这个组织成立于1986年,2005年并入IOGP(International Association of Oil & Gas Producers),中文名称为国际油气生产者协会。EPSG对几乎所有常用的坐标系统都进行了编号,统一了坐标系的表示,于是我们经常会看到使用EPSG编号来指代某一坐标系。

以下是几个常用坐标系的EPSG编号和单位:

坐标系名 EPSG编号 单位
WGS 84 EPSG:4326
WGS84 Web Mercator EPSG:3857, EPSG:900913

    至于为何WGS84 Web Mercator有两个编号,这里面还是有一段故事的,可以去这里查看。

    查询全部的EPSG编号和详细信息请访问EPSG官网

2 瓦片地图

    互联网地图服务,常常通过采用构建瓦片地图的方式,加快用户的访问,减少数据传输量。具体而言,瓦片地图就是对投影后的地图在不同尺度(层)下进行切片,每个尺度得到的地图切片数量不同、表示范围不同、详细程度不同,但是图片的尺寸相同(一般为256*256),最终构成一个“瓦片金字塔“”。根据用户所浏览的区域范围,自动确定所要返回的切片层级,在满足用户查询需求的同时,保证了地图传输的效率。


瓦片金字塔.jpg

2.1 瓦片地图的编号

    在投影坐标系的选择上,目前主流的地图服务提供商基本都选择的是WGS84 Web Mercator坐标系。但是在如何对投影后的地图进行切片并编号时,不同厂商之间存在较大的差异。

谷歌地图,OpenStreetMap,WMTS

    以地图左上角为原点,X轴向右,Y轴向下,从0开始分别进行编号。Z的取值范围为[0, 18],在第z级别,x,y方向的瓦片个数均为:2z个,即x,y取值范围是[0 , 2z-1]。

    WMTS较为特殊,WMTS中的TileMatrix对应于z,TileRow对应于y,TileCol对应于x。编号方式和谷歌与OSM相同。

TMS

    以地图左下角为原点,X轴向右,Y轴向上,从0开始分别进行编号。Z的编码规则与谷歌地图相同。

z=1时,这两种瓦片的编号如下图所示。


谷歌和TMS地图切片 (z=1)
Bing地图

    微软Bing地图Z的编码规则与谷歌相同,同一层级的瓦片不用XY两个维度表示,而只用一个整数表示,该整数服从四叉树编码规则(QuadTree)。

Bing地图切片
百度地图

    百度地图的瓦片定义的方式比较独特,原点的位置在经纬度都为0的地方,X向左为正,向右为负;Y向上为正,向下为负。切分的方式不像上述3种方法在每一级进行二等分,而是通过定义每一级的地图分辨率,确定每一级应该划分的行列数。地图分辨率的表达式为:218-z,其含义是每个像素所对应的实际长度。由此,可得每一级应该划分的行列数为:2πR/(256*218-z),其中R为地球的半径,单位是米。

百度地图切片

2.2 瓦片编号与经纬度、投影坐标的转换

参考:https://blog.csdn.net/lxxlxx888/article/details/51897838

总结

    本文记录了与WebGIS相关的坐标系和瓦片地图的知识,说明了他们直接的相互关系。希望WebGIS开发者有所帮助。

参考资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270