GMap.NET是一个好的开源地图程序,封装了各种网络地图引擎,统一了操作,但要把它用于实际的工作中,还需要在基础之上进行大量的开发工作。
1)虽然解决了最底层的地图获取、投影和瓦片展现的问题,但是可扩展性不好;
2)图层、图元、文字标注的关系比较弱,需要重新封装,按照传统GIS引擎如ArcGis和Mapinfo的方式来改造;
3)业务信息的集成、业务数据的展现和操作没有考虑,如图元和业务信息的关联和信息的传递和事件触发、数据交换,需要提供一个粒度更大的开发包,才能非常方便的操作;
4)只能本地持久化,无法满足网络版的软件需要考虑将地图同步到各个客户端的要求。
为此我们开发了GPS.NET, 目标是要解决在实际开发地图应用、GPS应用、地理信息系统中的比较繁琐的部分,对常规、公用的功能进行了抽取、强化,在架构、接口和事件处理的设计上更加富有可扩展性,对与需要进行扩展的业务逻辑、数据交换、协议等以插件的形式进行了重新的设计。
1.对GMap.NET在进行更加友好的封装,未来能够达到拿来即用的效果,使用者可以更加方便的集成到自己的业务系统当中,如物流运输、地理信息管理等。
2.解决天朝GPS加偏处理造成的地图偏移问题;
3.在版本稳定后,推出GPS开发包, 计划在年底公布源码, 开发者可以在此基础上进行更加有创意的开发工作;
4.对于地图、图层、图元、标注、事件、业务信息交互、算法等进行了重新的设计。
5.不仅可用于GIS,也可用于数据的可视化表现,如市场占有、区域等级划分等等;
6.所有的图层、图元都直接持久化在服务器端,保证了网络版软件的地图信息同步的要求。
地图应用程序的界面设计规范如下:
增强图层对图元的约束,将图元的风格定义转移到图层上面来,对图层的定义变化将更新到该图层的所有图元,保证了同一个图层的图元风格必然是同一的,添加标注的时候,不需要对图元的风格进行个性化定义。
2.2.增加图层图标定义、名称、标注可见范围, 图层和文字标注可以根据Zoom的大小而动态调整可见不可见,这样可以减小地图的数据加载量,提高地图的美观和性能;
2.5. 增加多种图层类型,如PNG图片、GIF动画、圆、矩形、区域、路线轨迹图层等;
6.1.对于无意义的经纬度坐标,转换成可读性强的地理位置.