2010-07-11 57 views
1

我正在學習使用MapServer創建WMS服務,之後我想開發一個可以訪問它的PyQt桌面應用程序。我不知道最好的辦法是什麼,因爲我看到了很多網絡解決方案,但這不是我想要的。我也不知道是否有圖書館可以幫助我。你能給我一些建議嗎?有關創建WMS服務和桌面客戶端的建議?

在此先感謝!

回答

1

我假設你在MapServer上設置WMS服務沒有問題。測試這是與一個GIS桌面客戶端,或一個簡單的OpenLayers網頁。

要開發WMS客戶端,我會在GDAL庫之上構建。這也包含在MapServer中。

GDAL具有從遠程WMS服務器讀取的圖像 的能力,和治療 它們作爲它的任何其它數據源: 這意味着它可以採取 圖像,並將其轉換爲任何其它 格式,從JPEG2000到GeoTIFF。

http://crschmidt.net/blog/archives/285/producing-a-large-image-from-openaerialmap/

作爲額外的獎勵GDAL包括Python綁定將與腳本幫助。

http://pypi.python.org/pypi/GDAL/

您還需要的libcurl訪問的URL。 libcurl也有Python綁定 - http://curl.haxx.se/libcurl/python/

libcurl也包含在MapServer中,它本身可以是WMS服務器和客戶端。您還可以查看C++源代碼瞭解MapServer客戶端的工作原理 - https://trac.osgeo.org/mapserver/browser/branches/branch-5-6/mapserver/mapwmslayer.c

WMS服務返回一個圖像(除了一些額外的元服務之外),因此自定義開發將基於構建正確的WMS請求基於用戶操作。

如果您希望獲得更快的性能,請查看TileCache,它將緩存服務器上的WMS結果以便更快速地使用(也可以本地緩存)。

+0

偉大的回答gographika!非常感謝你!! – Alfre2 2010-07-13 08:10:32

相關問題