GIS是一款特别底层的技术型产品,我接手这个产品时,我发现对应的产品经理讲不清楚GIS的各种技术概念,后经查询,网上各种介绍很难看到GIS技术全貌,都是以下这种介绍,看完也一头雾水:
为了简单高效的理解GIS的全面,画了一张图,可以快速掌握GIS各种地图类型。
GIS技术分两层,1是后台服务,提供地图数据访问服务,支持数据类型包括WMS、WMTS、WCS、WFS等;2是渲染服务,就是把后台提供的数据进行渲染实现。
从图中可以看到,不同组织提供了不同的数据类型规范,比如OGC提供了WMS、WMTS等协议,Google提供了XYZ协议等。
数据类型核心就分为三种,图片服务(蓝颜色)、矢量数据服务(绿颜色)、栅格数据(黄颜色),从我的角度理解,栅格数据就是一种立体矢量数据。
其中,图片服务就是后台提供地图的图片,前端显示图片就实现了地图的显示;矢量数据就是后端提供地图数据的详细描述信息,比如点的经纬度等信息,然后有浏览器进行渲染显示;栅格数据就是在经纬度数据的基础上再加上高度等信息,用来渲染立体数据。
最后,关于图片服务,如WMS、WMTS、XYZ之间的区别,理解了上图之后,再网上查询资料就很容易理解了。
简化总结区别如下:
WMTS、TMS、XYZ 为静态瓦片,也就是一堆目录为金字塔结构的图片,好处是加载速度快,坏处是更新麻烦、迁移麻烦。
WMS 是动态瓦片,是根据请求参数,后台拿到空间数据之后,依据配置的样式,动态生成的瓦片,好处是可以实时更新数据和样式,坏处是,只能加载不是很大的数据量。
WFS 是矢量数据,一般用于小数据量的查询和编辑,也就是增删改查。
XYZ 是谷歌地图格式,跟 TMS 基本一致,只是 y 索引的方向相反。
Mapbox矢量瓦片将矢量数据通过不同的描述文件来组织和定义,在客户端实时解析数据完成绘制。