標籤:winform style blog http color io os 使用 ar
最進做項目要涉及到地圖開發有關的知識,看到了很好的一篇博文,和大家分享下。
我們先看看GMap.NET的定義:
GMap.NET是一個強大、免費、跨平台、開源的.NET控制項,它在Windows Forms 和WPF環境中能夠通過Google, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac等實現尋找路徑、地理編碼以及地圖展示功能,並支援緩衝和運行在Mobile環境中。
GMap.NET是一個開源的GEO地圖定位和跟蹤程式。就像Google地圖、雅虎地圖一樣,可以自動計算兩地的距離,定位經緯度,與Google地圖不同的是,該項目是建立在C#語言WinForm基礎上的。可以對地圖放大縮小,進行城市標記等。
GMap.NET的項目地址是http://greatmaps.codeplex.com/ ,我們可以下載相關的例子和源碼進行學習和研究。我在Google上搜過相關的項目,好像介紹的文章不多,不過不影響這個控制項的強大和易用。我們先看看它的介面:
GMap.NET號稱是可以支援很多種地圖來源的,不過我試了一下,好像有部分是有些問題,最好的效果是GoogleMapChina,如所示。
我用GoogleMapChina可以放大到很詳細的街道圖,做了一個地址查詢的例子,如下所示:
控制項可以繪出兩地的行車線路或者步行線路等,而且能夠算出兩地的距離,不過對於地理編碼的解析好像不是很準確,也擷取不到公交線路等資訊,不過應付一般的應用,應該是蠻不錯的了。
這個控制項預設使用了右鍵按住作為拖動,和GoogleMap用滑鼠左鍵作為拖動有點不太一樣(不過可以通過 this.gMapControl1.DragButton = MouseButtons.Left;來實現左鍵拖動),兩者皆能夠支援滾輪放大縮小的操作。控制項還支援經緯度的精確定位,繪製表徵圖(支援綠色、紅色的圖 標、十字元號等標記),支援中心點移動 ,匯出地圖圖片等功能。由於地圖控制項支援路線的繪製,所以應該支援一般的GIS應用中的軌跡回放功能的。由於地圖 控制項支援滑鼠位置和經緯度座標的轉換功能,因此,可以隨意擷取到相關的經緯度資訊。
這個Winform的地圖控制項,雖然對比Web的GoogleMap來說,很多功能還不具備,但是較普通的MapX和MapXtreme或者ArcGis等傳統的GIS來說,不用付太多的費用(甚至不用付費用),就可以使用上精細的地圖,不得不說是一個好訊息。
主要研究技術:代碼產生工具、Visio二次開發、客戶關係管理軟體、送水管理軟體等共用軟體開發
專註於Winform開發架構、Web開發架構、WCF開發架構的研究及應用。
轉載請註明出處:
撰寫人:伍華聰 http://www.iqidi.com
原文連結:http://www.cnblogs.com/wuhuacong/archive/2010/03/10/1681382.html
(轉)Winform下的地圖開發控制項(GMap.NET)使用心得