WMTS 概述 |
SuperMap iServer 提供了 WMTS(Web Map Tile Service,Web 地图瓦片服务)服务,该服务符合 OGC(Open Geospatial Consortium,开放地理信息联盟)制定的 WMTS 实现规范。WMTS 是 OGC 提出的缓存技术标准,即在服务器端缓存被切割成一定大小瓦片的地图,对客户端只提供这些预先定义好的单个瓦片的服务,将更多的数据处理操作如图层叠加等放在客户端,从而缓解 GIS 服务器端数据处理的压力,改善用户体验。
SuperMap iServer 的 WMTS 服务,基于以下几个方面的约定提供地图瓦片:
SuperMap iServer 目前支持以下 WMTS 版本:
WMTS 使用瓦片矩阵集(Tile matrix set)来表示切割后的地图,如图1所示。瓦片就是包含地理数据的矩形影像,一幅地图按一定的瓦片大小被切割成多个瓦片,形成瓦片矩阵,一个或多个瓦片矩阵即组成瓦片矩阵集。不同的瓦片矩阵具有不同的分辨率,每个瓦片矩阵由瓦片矩阵标识符(一般为瓦片矩阵的序号,分辨率最低的一层为第0层,依次向上排)进行标识。
图1 瓦片矩阵集
如图2所示,每个瓦片矩阵具有:
图2 瓦片矩阵
瓦片矩阵中的每个瓦片由瓦片的行(TileRow)列(TileCol)值进行标识,行列值分别从瓦片矩阵左上角点所在的瓦片开始算起,起始行列值是(0,0),依次向下向右增加,如图2所示。
WMTS 服务器只提供有限种坐标系和有限种比例尺的服务,为了提高客户端和服务器的互操作能力,WMTS 提出通用比例尺集(Well-known scale set)的概念。通用比例尺集是 WMTS 服务器之间的一个协定,由一个公共的坐标参考系统和一组公共的比例尺集合组成。定义 Well-known scale set 仅仅是一个协议机制,对于互操作来说在技术上并不是必需的。
WMTS 服务支持发布的坐标参考系可参考iServer OGC 服务支持发布的坐标参考系。
WMTS 服务所提供的瓦片数据是基于一定的比例尺集合来生成的,目前支持的通用比例尺集请参考 WellknownScale。比例尺是通过如下公式来定义的:
比例尺=1: 地面分辨率(a)*屏幕分辨率(pixel/inch)/0.0254(m/inch)
此公式可以简写为:比例尺=0.0254/(a*dpi)。
其中,地面分辨率(a)是指一个像素所代表的实际地面距离,单位为米,屏幕分辨率(dpi)是指屏幕上每英寸长度内包含的像素数量,而0.0254(m/inch)是指米与英寸的单位转换。
对于 WMTS 1.0.0 标准服务来说,其分辨率是通过像元大小(0.28mm=0.00028m)来界定的,转换为屏幕分辨率,即每英寸像元数为:1inch/(0.00028m/0.0254(m/inch))=0.0254/0.00028≈90.714。
SuperMap iServer 地图出图的默认屏幕分辨率为《地理信息公共服务平台 电子地图数据规范》规定的常用值96,与 WMTS 1.0.0 标准服务中规定的略有不同。在使用本地缓存(如 MBTiles)发布 WMTS 服务时,可能出现不一致。为此,SuperMap iServer 提供了“wmts-china”接口实例,该接口实例采用的《地理信息公共服务平台 电子地图数据规范》中规定的地图分级,以及通用的屏幕分辨率96。
WMTS 标准中,TopLeftCorner 是描述比例尺集(TileMatrixSet)的左上角坐标的字符序列,由坐标 X 和坐标 Y 组成。在地理坐标系中,经度在纬度之前的顺序是不符合国际惯例的。航空和海运部门通常期望纬度在经度之前,在紧急情况下,不同的坐标显示可能会导致不安全的因素。虽然没有标准明确规定纬度必须在经度之前,但是一般来说都会采用纬度在经度之前的顺序。
在 SuperMap iServer 提供的 WMTS 服务中,地理坐标系的 TopLeftCorner 使用“Y X”的顺序;投影坐标系、自定义坐标系、平面坐标系的 TopLeftCorner 使用“X Y”的顺序。
表1 常见坐标系的 TopLeftCorner 顺序
坐标系 | 4326 | 3857 | 4490
(国家大地坐标系) |
EPSG:0 (自定义坐标系) |
平面坐标系 |
TopLeftCorner 坐标顺序 | YX | XY | YX | XY | XY |
OGC(Open Geospatial Consortium,开放地理信息联盟)WMTS 相关规范,http://www.opengeospatial.org。