❓︎❓︎❓︎
现实中的数据会很多,有些会用作业务使用,有些只会用作底图,如何将繁多的数据样式化并不影响展示的效率?
采用预生成的方法存放在服务器端,然后根据用户提交的不同请求,把相应的地图瓦片发送给客户端的过程,它是一种多分辨率层次模型,从瓦片金字塔底层到顶层,分辨率越来越低,但表示的地理范围不变。
1. 切片原理
下面以谷歌切片(900913)集为例来说明一下切片原理和几个重要的概念。
谷歌切片(900913)集使用
web墨卡托(等角正轴圆柱)投影,常见的如谷歌、OSM,国内的如天地图、高德都是采用此规则。
1.1 切片范围(Tile Extent)
切片范围是指在制定切片规则的时候,需要定义一个大于数据范围或者与数据范围一致的切片范围,谷歌切片集的切片范围为全球范围,即[-20037508.34, -20037508.34, 20037508.34, 20037508.34]。
1.2 切片原点(Tile Origin
在确定了切片范围后,需要定义一个切片原点,切片原点的定义有两种:左上(xyz)或者左下(tms)。切片原点的选择主要影响 “级-行-列”中的“列”。谷歌切片集的切片原点为左上,即 [-20037508.34, 20037508.34]。
1.3 切片大小(Tile Size)
对于栅格切片,切片大小是指切片完成后每个图片的大小。对于矢量切片,切片大小指的是客户端在渲染切片数据时所呈现出来的大小。早期,切片的大小是256(谷歌切片集的切片大小)像素,这个跟当时的电脑的分辨率比较小有很大关系,随着技术的进步,现在很多切片的时候会采用512像素的大小,矢量切片在渲染的时候的就是采用的这个大小。
1.4 切片分辨率(Tile Resolution)
又称为像素大小(Pixel Size),是一组计算值,在不同的级别下其值不同,其计算公式为(xmax - xmin) / tileSize * Math.pow(2, zoom),如在0级的时候,谷歌切片集的分辨率为(20037508.34 - (-20037508.34)) / 256 * Math.pow(2, 0) = 156543.03390625
2. 切片分类
切片规则
xyz:左上tms:左下
切片类型
- 栅格切片
- 矢量切片
