早上有人問起,有沒有什么好的開源GIS方案。開源GIS的方案其實是現(xiàn)成的,都成標配了,無非是postGIS存數(shù)據(jù),uDig配圖,mapserver發(fā)布服務(wù),geowebcache切圖,openlayers瀏覽地圖。工具相當之完整。隨著geoserver版本的不斷演進,如今的安裝已經(jīng)是“一鍵式”,尤其是文檔寫的非常詳細,根本不需要我們找什么的“秘籍”或手冊來完成。
玩開源GIS,許多人考慮使用postGIS做空間數(shù)據(jù)庫,這也是我開始的選擇,結(jié)果搞得機器上隨著項目的變化,裝了sql server、oracle11g、postgre+postgis、mysql等好幾種類型的數(shù)據(jù)庫,對第三種我的了解是最少的,用的也不多,干脆考慮就將oracle spatial作為數(shù)據(jù)庫算了,其它照舊,反正uDig也好,mapserver也好,已經(jīng)能夠直接讀取oracle spatial的數(shù)據(jù)。
整個過程是這樣:
1.裝oracle 11g數(shù)據(jù)庫(很簡單)
2.裝arcsde,注意選擇oracle spatial為空間存儲結(jié)構(gòu)。我們這樣做不是為了將來通過sde去訪問數(shù)據(jù),而純粹是為了將海量數(shù)據(jù)存儲到oracle中方便而已;安裝后,用arccatalog將數(shù)據(jù)裝進去;
3.用uDig來配圖。uDig也是個開源的桌面端GIS軟件,我們配圖其實就是為了那個SLD文件,配好之后,將SLD導(dǎo)出。
4.安裝mapserver,并安裝oracle datastore擴展,讓mapserver能夠直接讀取oracle spatial的數(shù)據(jù)。(如何將一個datastore發(fā)布為WMS服務(wù),按用戶手冊來,就幾分鐘的事情)
5.用geowebcache切圖
6.用openlayers來瀏覽,你要是不喜歡,還可以使用extmap來做
中間就遇到一點麻煩,直接將geodatabase的要素類保存為oracle spaital后發(fā)布,會顯示不出來,后來的解決方法是先轉(zhuǎn)shapefile,然后再導(dǎo)入sde,一切正常。
我還是建議大家使用oracle spatial來直接存儲數(shù)據(jù),這樣無論是arcgis能用,其它類型的GIS軟件業(yè)都能搞定。先從數(shù)據(jù)上保持獨立性。