WebGIS系统与一般大众Web应用系统不同,涉及复杂的地图应用,并且对交互性有较高要求。如果从底层做起,从零开始实现一个WebGIS应用系统,将是一个非常艰难的过程。
为了达到高效开发的目的,一般都使用 WebGIS开发框架。
WebGIS开发应用领域的关键问题。目前,各大GIS厂商都推出了其强大的 WebGIS开发平台,很多互联网巨头公司或组织也投入研发,提供了各自的WebGIS开发API。在好的WebGIS开发框架下,开发者往往只需编写少量
的代码,花养少量的时间即可实现高性能的Web应用系统。面对众多选择,一个好的WebGIS开发框架至关重要!
OpenLayers是一个开源的项目,其设计之意是为互联网客户端提供强大的地图展示和操作功能以及灵活的扩展机制。
OpenLayers的出现,为 GIS的Web应用开辟了一条崭新的道路,一下吸引了很多WebGIS 开发人员的目光,目前已经成为一个拥有众多开发者和帮助社区的成熟、流行的框架。
OpenLayers目前的最新版本为5x,在默认情况下,使用经过性能优化的Canvas渲染器,同时也支持WebGL渲染器,可在支持HTML5和
ECMAScript5的浏览器上运行,包括Chrome、Firefox、Safari和Edge等,而对于较旧的浏览器和平台,如Internet Explorer(低至版本9)和 Android4x,需要转换应用程序包(如使用Babel)并与polyfill捆绑在一起。
在地图数据以服务方式提供的前提下,OpenLayers实现访问空间数据的方法符合行业标准,支持各种公开的和私有的数据标准和资源。
OpenLayers支持0GC 制定的WMS、WFS 等服务规范,可以通过远程服务的方式,将以OGC服务规范发布的地图数据加载到基于浏览器的 OpenLayers客户端中显示。目前,OpenLayers所支持的数据格式有XML、JSON、GeoJSON、MVT、GML、GPX、KML、WFS、MVTWKT(Well-Known Text)等在其format名称空间下的各个类里实现了具体读/写这些数据格式的解析器。
因此,基于OpenLayers能够利用的地图资源非常丰富,提供给用户最多的选择,包括公共地图服务,如0penStreetMap、Google 地图、Bing地图、Baidu地图等,0GC 资源(如WMS、WMTS、WFS),其他矢量数据以及简单的图片等。