简单来说,wmts和tms实际是两种不同的切片索引组织方式。
WMTS 是 OGC 提出的一种瓦片地图服务标准,包含了很多内容和一系列接口, CesiumLab 并没有完全兼容 WMTS 服务标准,只是借鉴其切片规则,WMTS 从 0 级开始,以地图左上角为原点,从左到右为横轴正方向,从上到下为纵轴正方向。CesiumLab 发布的 wmts 服务切片索引为{z}/{x}/{y}。其中 z 为级别;x 是横轴方向的索引,y 是纵轴方向的索引。假设某点坐标为(x0,y0),x和 y 索引有如下计算公式:
x = Math.floor( (x0 + r) / tilesize ) y = Math.floor( (r - y0) / tilesize )(其中,r 为地球半周长,tilesize 为瓦片分辨率)
TMS 也是种标准的瓦片地图服务,其定义非常灵活,但默认情况下其与 WMTS 非常相似,只是以地图左下角为原点,纵轴从下到上为正方向。那么对于某点坐标 (x0,y0),x 和 y索引有如下计算公式:
x = Math.floor( (x0 + r) / tilesize ) y = Math.floor( (y0 + r) / tilesize )(其中,r 为地球半周长,tilesize 为瓦片分辨率)