開源gis

 

計算幾何方面的C++庫CGAL

處理ShapeFile矢量文件的開源庫ShapeLib

投影轉換 Proj.4

類別 GIS開源軟件 GIS商業軟件
GIS桌面系統 uDig、Jump、QGIS ArcMap、ArcGIS
GIS分析工具 GRASS、OSSIM ArcInfo、ArcGrid
地理統計 GNUR ArcGIS Geostatistical Analyst
三維虛擬地球 WorldWing,Earth3D,ossimPlanet ArcGlobal,Google Earth
空間數據引擎 PostGIS ArcSDE, Oracle Spatial
關係型數據庫 PstgreSQL,MySQL,Ingres Oracle,DB2
元數據服務 Isite ArcIMS Metadata Service
地圖服務 MapServer, GeoServer ArcIMS , MapGuide Enterprise
柵格矢量類庫 GDAL, OGR  
地圖投影 PROJ.4


開源(免費)三維 GIS(地形,遊戲) 續1

 

轉自 三維數字地球發佈平臺探索--幾款開源軟件介紹

http://www.3snews.net/html/71/22271-21962.html

先寫想法:

想做個簡單的地形漫遊,於是考慮在ww直接開發,或找個控件形式的開發組件。

最大的期望有:

1. 支持google的sketchup,快速智能三維建模

2. 設計模式做好點,最好先做成組件形式,然後開發應用程序

3. 性能再好點,對於索引技術,內存管理等等

4. 客戶端獨立版本 和客戶服務器端耦合版本的優化

5. 放點服務器的資料。

 

.net平臺

  1.WorldWind
      知名度很高,介紹也很全。鏈接在這裏NASAWorld Wind
     目前分爲.net版本和java版本。
     開發語言:c#.java
     渲染方式:DirectX,Opengl(Java)

      WorldWind的優勢
          WorldWind的軟件架構應該來說還是很不錯的,很優秀。開放的設計,使得Worldwind的擴展非常方便和快捷,目前已有上百種各式各樣的插件,很多插件都很有意思和實用。使用.net和java,研究它的工作原理變的相對容易。
         相對來說.net版本的容易深入些。java版的嚴格面向對象方法的使用,使得java版的精簡,但深入起來不如.net容易。
        以前交流的時候,我經常會推薦WorldWind。很好很強大。

        這裏以.net版進行說明。

       下面的缺陷不能掩蓋WorldWind的光彩。      
       
       WorldWind的缺陷

          總體架構設計沒太大問題。主要在內部的幾點
        1.速度慢。幾個原因導致worldwind在實際使用中存在速度慢的問題.
            a)影像數據組織混亂。由於worldwind在系統設計時面向的就是各個行業各種數據的集成。因此他設計時的兼容,導致同一地區數據獲取重複(佔內存資源)、不同數據獲取服務器速度不一致影響。
            b)c#異常。捕獲異常佔用了worldwind大部分時間。導致顯示、數據獲取時嚴重的停頓。
            c)SRTM的動態生成。如果你想像取圖工具一樣把SRTM下載下來,那簡直不可能。
            d)QueueDownload實際運作時,一旦出現異常和錯誤,將導致數據下載停頓。需要重新調整視角。而貌似多線程的下載,實際效果並不明顯。這就導致顯示出現停頓。
        2.三維支持能力稍差。
           尤其是在模型的支持方面,雖然有個ModelFeature類來進行三維顯示。這裏有問題:
          a)不支持LOD,雖然.x文件設計時能支持,不過顯然ModelFeature不支持。
          b)模型顯示漂移。當你放大到最詳細時,會發現模型左右上下晃動。
          c)模型未按tile形式組織。Cache、內存、釋放等方式都存在問題。
        3.矢量支持
           worldwind的矢量處理顯示類比較混亂。效果也不是太好。
        4.KML支持
           通過一個插件能夠支持KML,不過想達到googleearth的添加等功能,還需要做很多工作。
        5.內存泄露
           按理,c#不會存在內存泄露。出現問題的地方是QuadTile.Dispose,D3D的紋理沒有進行清除。使得資源佔用越來越大,速度越來越慢
        6.DEM顯示缺陷
           每個Tile之間未作平滑處理,經常會出現深坑、斷檔。
        7.影像黑邊
           大多數基於worldwind的軟件,可以看到影像邊緣很明顯的黑邊、鋸齒。究其原因,是Jpg壓縮,出現黑色滲透交融導致黑邊鋸齒。 兩種解決辦法,a)邊緣地帶採用png。b)嚴格的數據組織。

       WorldWind的國內應用
          可以說,國內很多高手都解決了上述的問題,並且發揚WorldWind的優勢。典型代表EVGlobe等等。很不容易,從某種角度上來說,確實是自主研發。

非.net平臺


 2.OSSIMPlanet
      鏈接:ossimplanet
     開發語言:c++
     渲染方式:opengl
      相比WorldWind而言,名氣並太大。雖然推薦時,我一般不推薦它,但他確實是另外一個很強大的開源數字地球。我不推薦它的原因是:
     1)基於c++。光研究瞭解它就要花好多成本,這並不太適合國內公司和單位。門檻高,時間長,見效慢。
     2)相關資料少。它涉及到太多的大型開源庫,而國內翻譯的資料相對少很多。不像WorldWind,拿套源代碼就能開幹。

     但我很喜歡它,作爲技術人員來說,我推薦大家去看。很多樂趣和知識在裏面。很優雅,很內涵,值得收藏。

   OSSIMPlanet優勢
     1)基於OSG(Open Scene Graph),一個很龐大很工業很成熟的開源軟件。這點很吸引我。國內很多公司採用,如西安賽能。地址:http://www.3snews.net/html/71/www.openscenegraph.org
        僅OSG就能列出非常多的文章,使用OSG的好處不勝列舉。要描述清楚需要花很多篇幅。這裏我們就帶過。
    2)平滑快速高效的顯示效果。
    3)作爲平臺來說,他涵蓋的內容很全,比如你可以用OSG做出媲美TerraBuilder的軟件。用GDAL+OSG支持絕大多數矢量、影像、模型文件。
    4)完美的模型支持。不用說LOD,連整個城市裝入一點問題沒有。在很早以前,有個叫做VTP的虛擬城市開源軟件。
    5)專業化,確實很專業。
    6)腳本支持。通過採用OSG的osgInterper(這部分實在是太美妙了),能快速綁定Python,Lua,JavaScript,Ruby。
    7)想了解更多的優勢,還是自己去下個來看吧。

  OSSIMPlanet缺陷
     從技術角度來講,OSSIMPlanet的缺陷幾乎沒有。不過,上面說過了,想基於它形成自己的產品和解決方案,要花很多投入和資金。因此它的硬傷就是,不適合商業化。

 OSSIMPlanet國內應用
     幾年前,我和一個開發工作室聊過。他們採用的是OSG以及基於OSG開發的數字地球,參考了ossimplanet但未直接使用。因此,國內應用,沒有。
     這個工作室產品名爲VirtualTerran。後來貌似變成了mapok(不確定,知道的請聯繫我)

 3.Gps3D
   地址:http://www.3snews.net/html/71/www.mgix.com/gps3d/
   這款開源軟件應該來說更側重於gps功能。當然也包含了三維地球的部分功能。
   開發語言:c++
   渲染方式:Opengl

   這個開源軟件很小巧也很實用。作爲技術參考來說,非常不錯。可以參考的部分是經緯度轉三維座標,WMS、WFS的遠程調用以及Tile的三維顯示。

   缺點就不多說,畢竟方向不一致,不能以平臺來要求它。

4.Earth3D
  地址:http://www.3snews.net/html/71/www.earth3d.org
  這款開源軟件適合初步研究三維地球。它顯示了三維地球,並顯示了國界線。
  開發語言:c++
  渲染方式:Opengl

  作爲初步研究,還是不錯的。畢竟起點的第一步就是如何顯示三維地球並貼上MODIS數據。它還能顯示國界線。很不錯的參考。

5.其他更多的開源軟件
  目前爲止,我發現的開源軟件就是以上4種,如果你知道更多,請告訴我。

總結:
  1.WorldWind最成熟,最適合商業化.
  2.技術最優OSSIMPlanet

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