全组件式GIS软件——开辟GIS开发新境界

  http://www.supermap.com.cn 2001年12月17日 计算机世界报第49期

  20世纪80年代以来涌现出的GIS开发平台中一直是桌面GIS软件占主导地位。但以C++面向对象技术为基础发展起来的COM(组件对象模型)技术实现了在二进制代码级的对象重用,且不依赖于特定的编程语言。而在COM基础上发展起来的ActiveX控件,除了具有面向对象的特性,还可以象Windows界面标准控件一样进行交互。只是由于COM技术是较底层的技术,易用性和开发效率远低于ActiveX控件。目前以ActiveX控件形式发布的产品更为丰富。与此对应,GIS的开发也由早期桌面型软件加专用语言或宏语言的方式转向了控件加通用开发语言的方式。   ArcView、ArcMap和MapInfo都是典型的桌面GIS软件,主要的定制技术有宏语言AML、脚本语言Avenue以及VBA,MapInfo则采用专用的MapBasic。对这些专有定制技术,能熟练掌握的人很少,开发效率低,所以不合适开发大型软件系统。而且在与其他系统整合时功能粒度过大,定制出来的应用程序功能差。

  由于历史的原因,桌面GIS软件大多以文件方式保存数据,单个文件无法处理大量数据,用户不得不将大文件拆成多个小文件来加快处理速度,如果一个地理对象跨越了多个文件,完整的对象就只能拆成几部分,编辑也只能分段进行,最要命的是这些文件没有安全机制,Arc/Info的Coverage和Shape文件以及MapInfo的TAB文件多年来一直都存在这个问题。

  采用AactiveX技术的控件GIS产品不但可以解决这个数据保密问题,而且定制的应用程序在完成用户的指定任务时比桌面GIS软件效率高、能有效理顺企业的信息流。由于GIS中的属性数据大多来自MIS应用系统,地图数据则大多是来自测绘系统的CAD数据,所以采用控件技术能将GIS技术融入企业的MIS、ERP、CRM系统中。因为这种种优势,采用ActiveX技术的GIS控件在GIS应用集成中日益受到重视,它将GIS应用开发提高到一个新的境界。   但由于控件GIS产品晚于桌面GIS软件出现,许多先有桌面GIS软件的厂商出于维护自身利益的需要,并没有全力发展其相应的控件产品,通常在控件GIS产品中提供的功能比桌面GIS产品要少。而超图公司今年11月23日最新推出的全组件式GIS软件SuperMap III,则可以满足大多数应用的需求。

  它提供两种数据组织方式:SDB格式的数据文件和数据库,其中数据库方式提供对Oracle和SQL Server的支持。这两种方式都可以提供对数据源的口令保护功能。   因为它对数据库的支持,所以可以利用数据库的诸多优势,比如并发控制、交易管理、数据复制、权限管理、海量数据管理等。SuperMap III还提供新的空间数据库技术SDX(Spatial Database eXtension),以取代SuperMap2000种的ADO引擎,从而可以获得更强的空间数据库管理能力。

  对多种数据源兼容是SuperMap III的一大特色。它可以做到格式无关和位置无关的数据集成,并且用户可以在应用程序中直接存取DWG、DXF、TAB、MIF、E00、SHP、Coverage, DGN, VCT, DBF、MDB等格式的文件导入/导出系统。

  在SuperMap提供的所有控件中,其排版输出控件SuperLayout可以进行地图制版输出。很多同类的GIS软件产品中都缺少这个功能,用户必须自己承担这个任务或是回到桌面GIS中采用交互的方式人工完成。

  SuperMap III还提供了一个开放的符号编辑器,可以导入或直接引用TrueType字体中的某个字符,这样用户可以根据需要组织自己的符号库。SuperMap III公开了符号的交换格式,可以接受来自DWG、DXF、ICO、BMP、SDB等格式的图形进入符号库。 (上海市徐汇区商业委员会 聂长青)