內容摘要:作圖需要數據,要把本地的數據資源進行共享,或者從服務端獲取地圖數據。經常需要面對各種地圖服務規范,例如:WMS、WFS、WCS、WMTS等。因此,了解這些服務的內容是相當重要的,今天我們說一下最常見的四種服務協議。
1、OGC聯盟
在介紹幾個協議之前,我們先說說OGC聯盟。
開放地理空間信息聯盟 (Open Geospatial Consortium-OGC),是一個非盈利的國際標準組織,致力于提供地理信息行業軟件和數據及服務的標準化工作,它制定了數據和服務的一系列標準,GIS廠商按照這個標準進行開發可保證空間數據的互操作。
OGC在1994年到2004年期間機構名為Open GIS Consortium, 后因業務需要更名為OGC。
因為有了OGC,各個GIS廠商之間為了實現數據之間的交互,所以才有以下的協議。
2、WMS服務
WMS是指OGC的Web地圖服務(Web Map Service)規范,它利用具有地理空間位置信息的數據制作地圖,將地圖定義為地理數據可視的表現。詳細信息可以參考GeoServer官網的WMS介紹。
WMS定義了一個規范的HTTP接口,支持標準HTTP協議的GET和POST請求,但多基于GET方式進行服務請求。能夠根據用戶請求返回相應的地圖(包括PNG,GIF,JPEG等柵格形式或者是SVG和WEB CGM等矢量形式)。
小哥,在安裝Geoserver服務后,配置了一個自己的WMS服務,這不在Surfer中可以直接從服務端直接加載數據了,如圖1和圖2。
把地圖數據放到服務器,然后通過WMS協議發布出來,想要那一塊直接輸入參數就ok啦!圖2是配置的服務信息,內網的小伙伴們可以試試哦!
3、 WFS服務
WFS是指OGC的Web矢量(要素)服務(Web Feature Service),返回的是矢量級的地理標記語言GML編碼,并提供對矢量的增加、修改、刪除等事務操作,是對Web地圖服務的進一步深入。WFS通過OGC Filter構造查詢條件,支持基于空間幾何關系的查詢,基于屬性域的查詢,還包括基于空間關系和屬性域的共同查詢。
WMS返回的是圖層級的地圖影像,而WFS是為了返回純地理數據而設計的,它不包含任何關于繪制數據的建議。
矢量地圖/圖層的共享可以考慮WFS。
4、 WCS服務
WCS是指OGC的Web柵格服務(Web Coverage Service)面向空間影像數據,它將包含地理位置值的地理空間數據作為“柵格或者說“覆蓋”(Coverage)”在網上相互交換。
一些地形圖,異常圖之類的網格文件,用這個WCS沒毛病。
5、WMTS服務
WMTS指OGC的Web地圖瓦片服務(Web Map Tile Service),是OGC提出的緩存技術標準。WMTS標準定義了一些操作,這些操作允許用戶訪問瓦片地圖,是OGC首個支持RESTful訪問的服務標準。
WMTS提供了一種采用預定義圖塊方法發布數字地圖服務的標準化解決方案。WMTS彌補了WMS不能提供分塊地圖的不足,在服務器端把地圖切割為一定不同級別大小的瓦片(瓦片矩陣集合),對客戶端預先提供這些預定義的瓦片,將更多的數據處理操作如疊加和切割等放在客戶端,降低服務器端的載荷。
WMTS犧牲了提供定制地圖的靈活性,代之以通過提供靜態數據(基礎地圖)來增強伸縮性,這些靜態數據的范圍框和比例尺被限定在各個圖塊內。這些固定的圖塊集使得對WMTS服務的實現可以使用一個僅簡單返回已有文件的Web服務器即可,同時使得可以利用一些標準的諸如分布式緩存的網絡機制實現伸縮性。
瓦片服務一般是在服務器上面預先渲染好,特別是分級數量較多時,還是很耗費服務器資源的,好處是圖片形式的交互,協議簡單,http啥的都支持,也是最廣泛使用的一種協議,百度地圖啥的都是這種協議。
知道上面幾個服務后,再看看Geoserver的支持類型(圖3),下面剩下的就是開心地配置嘍!
小結:
WMS:是一種動態地圖服務,根據用戶請求返回相應地圖數據的可視化結果,實時切片,因此速度較慢。是GeoServer發布地圖時較為常用的服務。
WMTS:是一種采用預定義圖塊方法發布數字地圖服務,將地圖切分成瓦片矩陣集合,犧牲了提供定制地圖的靈活性,代之以通過提供靜態數據(基礎地圖)來增強伸縮性,這些靜態數據的范圍框和比例尺被限定在各個圖塊內,但是提升了服務速度。例如我國的天地圖就是使用這一服務進行組織的。
WFS:是為了返回純地理數據而設計的,它不包含任何關于繪制數據的建議,它提供了對矢量的增加、修改、刪除等事務操作。
WCS:是面向空間影像數據服務,它將包含地理位置值的地理空間數據作為“柵格或者說“覆蓋”(Coverage)”在網上相互交換。