Winform下的地图开发控件(GMap.NET)使用心得

本文介绍GMap.NET,一个用于WindowsForms和WPF环境的强大、免费、跨平台、开源的地图控件。它支持多种地图来源,如Google、Yahoo!、Bing、OpenStreetMap、ArcGIS等,可用于路径查找、地理编码和地图展示。控件功能丰富,包括地图缩放、城市标记、路线绘制、距离计算等,适用于一般应用。
我们先看看GMap.NET的定义:
GMap.NET是一个强大、免费、跨平台、开源的.NET控件,它在Windows Forms 和WPF环境中能够通过Google, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac等实现寻找路径、地理编码以及地图展示功能,并支持缓存和运行在Mobile环境中。
GMap.NET是一个开源的GEO地图定位和跟踪程序。就像谷歌地图、雅虎地图一样,可以自动计算两地的距离,定位经纬度,与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来说,不用付太多的费用(甚至不用付费用),就可以使用上精细的地图,不得不说是一个好消息。



转载于:https://www.cnblogs.com/gnhao/archive/2013/01/06/2847083.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值