GeoServer入門學習:06-發佈多層級TIF地圖大圖數據

一、概述

通常情況下,我們所拿到的數據是地圖各層級構建好金字塔後的tif文件,每個層級對應一份tif文件,這篇文章主要是要解決多層級地圖數據發佈的問題。文章中以天地圖的數據爲例進行演示說明。

 

二、配置比例尺和座標(Gridsets)

首先我們需要在Gridsets裏添加下載的天地圖各層級所對應的比例尺和座標,按照如下的步驟進行添加。
1、如下圖所示,登陸GeoServer系統後,從左側的菜單中打開Gridsets管理頁面。

2、如上圖所示,點擊右側管理頁面中《Create a new gridset》超鏈接,打開添加Gridset的頁面。

3、按照上圖所示的內容填寫相關信息,通過下方的《Add zoom level》可以增加新的圖層比例尺和座標信息。
4、填寫好各項信息之後,點擊下方的《保存》按鈕進行保存。如果保存成功了,則返回如下的頁面:

 

三、發佈數據

配置好了Gridset之後,就可以發佈數據。
1、由於需要發佈多個層級的數據,最好是能建立一個新的工作區,將這些層級的數據都放置在該工作區中。如下圖所示:

添加工作區的時候,可以將其設置爲默認工作區,這樣方便後續數據的添加。
2、另外,我們需要準備好各層級的TIF文件,如下圖所示:

說明:爲了演示方便,只提供了中國地圖7級和8級的數據。其他各層級的數據,可以自行下載。
4、接下來添加新的數據存儲,這步主要是將前面準備好的TIF層級數據作爲數據源添加到GeoServer,爲後面添加圖層做準備。

5、點擊上圖所示的《添加新的數據存儲》,打開如下的頁面:

6、點擊上圖中的《GeoTIFF》進行下一步操作。

7、如上圖所示,在《添加柵格數據源》頁面,配置工作區、數據源名稱和鏈接參數。其中鏈接參數的URL就指定到我們前面所準備的TIF文件,可以單擊文本框右側的《瀏覽》超鏈接,打開文件瀏覽列表進行選擇。
8、做好上述的配置之後,點擊《保存》按鈕。成功保存後,會打開《新建圖層》的界面:

9、點擊上圖操作欄中的《發佈》鏈接,可以進行該圖層數據的發佈,如下圖所示:

10、如果需要修改圖層的GridSets,可以在上圖所示的頁面中點擊切換到《Tile Caching》選項卡,並且滾動到該選項卡內容的最後部分,如下圖所示:

如上圖所示,可以在該頁面增加或刪除Gridset,這個會影響到後面數據的切片方式,比如切片的尺寸等信息。
11、修改完畢之後,點擊下方的《保存》按鈕,完成該圖層的發佈。

從上圖可以看到,在《圖層管理列表》中會出現該發佈好的圖層。
12、可以預覽發佈的數據和圖層是否正確,如下圖所示的操作:

在左側管理模塊列表中,單擊《Layer Preview》切換到該頁面,可以在列表中看到前面所發佈的圖層,然後點擊《OpenLayers》超鏈接進行圖層的預覽。

13、至此,就完成了一個TIF數據的發佈,如果有其他層級的數據,可以此按照上述的步驟進行發佈。 

 

四、預先緩存切片數據

按照上圖的步驟所發佈的是一個完整的TIF數據,但在實際瀏覽地圖的時候,是按照瓦片的方式只加載當前區域、當前層級的地圖數據。這個過程,就需要對完成的TIF進行切片,並緩存起來了。爲了增強用戶的瀏覽體驗,加快瀏覽的速度,可以實現將生成這些切片數據,並將其緩存起來。可以按照如下的步驟進行操作。
1、首先,通過左側菜單切換到《Tile Caching》頁面,如下圖所示:

2、在上圖所示的頁面列表中,找到我們要切片緩存的圖層(比如tif:china-level7),然後在《Actions》列單擊《Seed/Truncate》鏈接,打開如下的頁面:

在該頁面中可以對切片任務進行配置,可以配置的內容包括:

  • Number of tasks to use:該選項表示可以用多少個任務來切圖,類似於多線程的模式,如果電腦性能允許的情況下,可以適當增加這個數量,這樣切片的速度會更快些;如果電腦性能不高的話,數值太大的話,反而可能會影響性能。
  • Type of operation:操作類型,包括:Reseed-regenerate all tiles(重新進行完整的切片操作)、Seed-generate missing tiles(只對缺失的部分進行切片)、Truncate-remove tiles(清空切片數據)。
  • Grid Set:選擇切片的Gridset,這個和圖層配置時候設置的Gridset有關。
  • Format:切片的數據格式。比如image/png
  • Zoom start:切片的開始層級。比如目前的圖層數據是7級數據,可以基於這個層級的數據切出1級、2級、3級等不同層級的數據。
  • Zoom stop:切片的結束層級,結合Zoom start的選項,就可以將這2層級數據之間的所有層級數據進行切片。
  • Modifiable Parameters:修飾參數,比如給切片選擇樣式等內容。
  • Bounding box:切片的邊界範圍,是個可選項。

溫馨提醒:切片的層級最好和當前圖層的層級保持一致,這樣切出的圖片不失真,如果切片層級太低或者太高,效果都不會太好看。
3、做好上圖的配置之後,就可以點擊《Submit》按鈕,提交任務,然後系統就進行切片操作了,如下圖所示:

在這個頁面中顯示出了切片任務的運行情況,列表中顯示多少條記錄和《Number of tasks to use》的設置有關,也就是同時有多少個任務在進行當前圖層的切片操作。
另外,該頁面也不會自動更新任務狀態,如果想要查看最新的任務狀態,可以點擊列表下方的《Refresh list》鏈接進行刷新。
4、切片任務完成操作後,刷新任務列表會出現如下的信息:

這就表示該切片任務已經完成了。
 
 

五、參考資料

https://blog.csdn.net/zhengjie0722/article/details/100034677
https://blog.csdn.net/u013592964/article/details/53337968

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章