正在加载图片...
额外的GlS开发语言,只需熟悉基于 Windows平台的通用集成开发环境,以及 ComGIS各个 控件的属性、方法和事件,就可以完成应用系统的开发和集成。目前,可供选择的开发环境 很多,如 Visual c++、 Visual basic、 Visual Foxpro、 Borland C++、 Delphi、C+ Builder以及 Power Builder等等 3、大众化的GIS 组件式技术已经成为业界标准,用户可以象使用其他 ActiveX控件一样使用 ComGIS控 件,使非专业的普通用户也能够开发和集成GIS应用系统,推动了GS大众化进程。 ComGIs 的出现使GIS不仅是专家们的专业分析工具,同时也成为普通用户对地理相关数据进行管理 的可视化工具 4、成本低 由于传统GIS结构的封闭性,往往使得软件本身变得越来越庞大,不同系统的交互性差 系统的开发难度大。 ComGIS提供实现空间数据的采集、存储、管理、分析和模拟等功能, 至于其他非GS功能(如关系数据库管理、统计图表制作等,则可以使用专业厂商提供的专门 组件,有利于降低GIS软件开发成本。另一方面, ComGIs本身又可以划分为多个控件,分 别完成不同功能。用户可以根据实际需要选择所需控件,最大限度地降低了用户的经济负担 、 ComGIs的设计与开发 设计 ComGIS,需要根据功能划分为多个控件。划分控件需要根据不同的数据结构和系 统模型进行具体分析,要考虑以下几个方面的问题:(1)控件间差别最大、控件内差别最小 (2)纯设计用模块与将随集成系统发布的模块分开,例如地图符号编辑、线型编辑器应与空 间査询分析等模块分开;(3)相同显示窗口的模块尽可能设计在同一个控件里:(4)处理相同 数据文件的模块尽可能设计在同一个控件里;(5)剔除空间查询分析控件中不必要的内容, 减少 Internet下载的数据量 考虑到以上因素,( Comgis可以划分为数据采集与编辑控件、图像处理控件、三维控件、 数据转换控件、地图符号编辑/线性编辑控件、空间査询分析控件等。其中一些无须进行二次 开发的模块不一定以组件方式提供,比如数据采集、数据转换、符号编辑/线型编辑等模块可 以用独立运行程序方式提供,数据转换模块还可以编译成动态连接库 传统GS软件与用户或者二次开发者之间的交互,一般通过菜单或工具条按钮、命令以 及二次开发语言进行。 ComGIs与用户和客户程序之间则主要通过属性、方法和事件交互(如 图9-3) 属性 ComGIS控件 ( ActiveX服务器) 为法→开发路 与其他COM组件 图9-3 ComGIS与集成环境及其它组件之间的关系(据宋关福等)118 额外的 GIS 开发语言,只需熟悉基于 Windows 平台的通用集成开发环境,以及 ComGIS 各个 控件的属性、方法和事件,就可以完成应用系统的开发和集成。目前,可供选择的开发环境 很多,如 Visual C++、Visual Basic、Visual FoxPro、Borland C++、Delphi、C++ Builder 以及 Power Builder 等等。 3、大众化的 GIS 组件式技术已经成为业界标准,用户可以象使用其他 ActiveX 控件一样使用 ComGIS 控 件,使非专业的普通用户也能够开发和集成 GIS 应用系统,推动了 GIS 大众化进程。ComGIS 的出现使 GIS 不仅是专家们的专业分析工具,同时也成为普通用户对地理相关数据进行管理 的可视化工具。 4、成本低 由于传统 GIS 结构的封闭性,往往使得软件本身变得越来越庞大,不同系统的交互性差, 系统的开发难度大。ComGIS 提供实现空间数据的采集、存储、管理、分析和模拟等功能, 至于其他非 GIS 功能(如关系数据库管理、统计图表制作等,则可以使用专业厂商提供的专门 组件,有利于降低 GIS 软件开发成本。另一方面,ComGIS 本身又可以划分为多个控件,分 别完成不同功能。用户可以根据实际需要选择所需控件,最大限度地降低了用户的经济负担。 三、ComGIS 的设计与开发 设计 ComGIS,需要根据功能划分为多个控件。划分控件需要根据不同的数据结构和系 统模型进行具体分析,要考虑以下几个方面的问题:(1) 控件间差别最大、控件内差别最小; (2) 纯设计用模块与将随集成系统发布的模块分开,例如地图符号编辑、线型编辑器应与空 间查询分析等模块分开;(3) 相同显示窗口的模块尽可能设计在同一个控件里;(4) 处理相同 数据文件的模块尽可能设计在同一个控件里;(5) 剔除空间查询分析控件中不必要的内容, 减少 Internet 下载的数据量。 考虑到以上因素, ComGIS 可以划分为数据采集与编辑控件、图像处理控件、三维控件、 数据转换控件、地图符号编辑/线性编辑控件、空间查询分析控件等。其中一些无须进行二次 开发的模块不一定以组件方式提供,比如数据采集、数据转换、符号编辑/线型编辑等模块可 以用独立运行程序方式提供,数据转换模块还可以编译成动态连接库。 传统 GIS 软件与用户或者二次开发者之间的交互,一般通过菜单或工具条按钮、命令以 及二次开发语言进行。ComGIS 与用户和客户程序之间则主要通过属性、方法和事件交互 (如 图 9-3)。 ComGIS 控件 (ActiveX 服务器) 集成开发环境 (ActiveX 容器) 与其他COM组件 方法 事件 属性 图 9-3 ComGIS 与集成环境及其它组件之间的关系(据宋关福等)
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有