GIS地理信息系统预研
前阵针对“出租车调度系统”作了一些GIS方面的调研、收集了相关的资料,主要包括GIS系统的基本要素、GIS系统的开发工具等;对这些商业、开源的系统作了对比、选型、Demo,另外也基本了解了城市出租车调度的业务流程。
出租车调度系统要求能够在电脑上查看车辆信息,包括实时位置、运行轨迹,并根据客户位置调派最近的车辆;根据以上需求,而且是商业软件,那么就要求我们的系统能调用地理信息数据,根据GPS信息在地图上绘图、查找等;满足以上条件的就是使用提供开发包的GIS系统。
这个项目最先想到的是Google Map的API,地图定位,绘图等都很方便,但需要在线使用,这可能会由于网络等因素导致我们的系统延迟,而且Google API许可证也限定了免费应用每天的连接数,商业应用需要付费,只能跳过,等下次自己做什么小玩意的时候可以用用。在这里面也找到了一个很好的应用网站GPSTracker,它可以获取你iphone的GPS数据,调用Google Map的API,在地图上显示位置和运行轨迹,很好用。
GIS地理信息系统的详细介绍请看这里:GIS on Wiki ,我们常见的GPS导航只是GIS的一个子集,其中的一种应用;GIS的应用很广泛,可以做车辆调度、资源管理等,例如可以给学校做一个电子的校园平面图,上面放一些类似建筑、设施等标识,也可以结合ERP数据,根据地域显示分析数据信息。
商业GIS系统排前两位的分别是ArcGIS、MapInfo,其余比较著名的有SuperMap、TopMap、MapGIS等;ArcGIS当之无愧的排在第一,各方面都很强大,因此建议在科研中使用;MapInfo是一款相对前者更轻量一些的系统,更适合商用,其最新版也提供了VB、.net环境的开发包,使用后感觉比较容易上手,费用适中,每个点的授权费用在2k~5k,开发环境一次性费用为2w~20w,个人比较推荐使用这一款。
开源GIS系统方面,选择比较多(可能是重点把时间花在这方面的缘故),下面简单罗列下:
WorldWind * NASA出品,功能极其强大,类似Google Earth,它使用的是卫星图,比较适合用于气候、资源等应用。
MapWindow * Sharp格式地图,速度快,提供的ActiveX控件叫MapX,是一款可以替代MapInfo的开源系统。
GRASS * 号称可以替代ArcGIS的开源系统,只能在Linux平台开发,另外有一款开源系统Quantum GIS也是基于此开发,但提供一个更友好的人机交互界面。
OpenJUMP * JAVA平台,地图支持GML 2.0,WKT(Well Known Text)、ESRI Shapefile以及JUMP自有的JML格式。支持PostGIS数据集的加载、绘制和写回,并且提供ArcSDE、Oracle Spatial以及MySQL Spatial的访问接口,通过支持空间拓展的数据库获取空间数据。这个好东西更适合学生、非营利组织等非商业用途的设计使用。
SharpMap * SharpMap内部由于没有设计Symbol的构架,因此,对于需要开发真正的GIS系统,需要封装Symbol架构,以便实现专题渲染和地图符号库。适合开发小型,不以地图为主的系统。
OSSIM * 这是一个用于遥感、图片处理、地理信息系统、照相测量方面的高性能软件,不适合二次开发。
以上开源的系统主要推荐MapWindow和OpenJUMP,前者比较靠近MapInfo,后者比较完善成熟,只是我对JAVA系统开发不在行,不予考虑。
对于开发GIS还有一项费用支出就是地图数据,一般是直接购买第三方地图供应商,他们会提供多种格式的数据供你选择;当然,开源的也有:OpenStreetMap、OpenLayers ,不过这些都是在线使用的,受制于网速和版权,不适合在商业软件中使用。前面讲到地图数据的格式有很多种,每种各有优劣,支持的操作也各不相同,在实际应用中要根据自己的用途进行选择,主流的GIS开发系统都支持多种地图格式。
这里再附上搜集自网上的一份GIS一览表:gis_list.pdf
最近留言