开源GIS(二)——openlayers加载Arcgis和geoserver在线离线切片

一、引言

 

      开始开源gis的不归路,第一课便是加载底图,底图目前主流的都是wmts,以后会研究一下wms,本文介绍了普通网络在线切片(如谷歌百度高德等)、Arcgis在线切片与离线切片、openlayer在线与离线切片。通过这三类主流的方式基本可以满足基本需求,如果遇到比较困难的可以直接研究下openlayer的切片加载原理,直接自己手动修改,你想怎么加载就怎么加载==

 

 

二、网络在线切片地图(以谷歌为例)

 

      网络在线切片比较简单了,直接知道他的地图url与参数对应关系就比较好操作了。

 




    
    Title
    
    
    


 

 

 

三、Arcgis切片

 

      Arcgis切片分为两类,一类是通过arcgisserver发布rest服务,可以使紧凑型可以使离散性的;另一类是离线地图切片,就是一张张图片,等价为arcgis发布的离散性服务中的图片。为什么分为这两种呢?因为你买了arcgis server服务可以随意用了,如果你没有买arcgis server,那么你可以用盗版arcgis server的切图,然后直接把图片放到web服务器上就行了,如果切片你也懒得用arcgis server切,你可以直接到网上(俗称地图下载器)下载arcgis标准的切片就行了。

 

1、Arcgis在线切片服务

 




    
    Title
    
    
    




 

2、Arcgis标准的离线切片

 

 




    
    Title
    
    
    


      暂时arcgis离线加载必须按照google切片要求切固定层级上述代码才能使用,自己随便定义的比例尺或分辨率还要调代码。

 

四、geoserver切片

 

      目前只做了geoserver栅格切片在线的加载,参考下了,离线的过几天再做下

 




    
    Title
    
    
    



      这里geoserver切片不是随便切就能加载的,必须自定义切片方案:设定坐标系,并且添加切片层级,这里一定别设定范围。

开源GIS(二)——openlayers加载Arcgis和geoserver在线离线切片_第1张图片

 

      最后在用geoserver切图的时候再设定切图范围,这样切出来的图片才能正常显示。

开源GIS(二)——openlayers加载Arcgis和geoserver在线离线切片_第2张图片

=====================================================================================

 

补充:geoserver wms调用,wms与wmts区别是wms每次请求返回一张图片,改图片是根据视图范围后台实时生成的。





    wfs demo
    
    





 

上面创建的tilewms最终从浏览器中可以查看加载的也是一张张切片,为什么呢,不过你放心他确实是wms,只不过是调用的实时渲染的切片,如果你想像咱们平时理解的wms每次得到一张大图,可以使用imagewms创建,如下:

    var wms = new ol.layer.Image({
        source: new ol.source.ImageWMS({
            ratio: 1,
            url: 'http://localhost:8080/geoserver/xcy/wms',
            params: {'FORMAT': format,
                'VERSION': '1.1.1',
                "STYLES": '',
                "LAYERS": 'xcy:bound',
                "exceptions": 'application/vnd.ogc.se_inimage',
            }
        })
    });

总结一小下wms调用

(1)切片方式(TileWMS):动态地图在GIS Server生成后,以切片的方式返回到前端,优点是将地图切分,每个切片的数据量很小,便于数据的传输,适用于网络状况不佳的环境;缺点是在地图切片的过程中,可能会造成我遇到的 标注多次出现的问题。

     (2)图像方式(ImageWMS):地图生成后,直接以一个整体返回到前端显示,优点是不会出现标注重复出现的问题,确定是对网络状况不佳的环境,可能出现请求失败的问题。

 

五、总结

 

 

  • 网络在线地图切片加载;

 

  • Arcgis服务切片加载与arcgis标准离线切片加载;

 

  • geoserver的wmts服务加载;

 

  • geoserver的wms服务加载;

 

 

 

 

 

你可能感兴趣的:(GIS,OpenLayers)