ComGIS的设计与开发


发布日期 : 2017-11-29 03:29:16 UTC

访问量: 85 次浏览

设计ComGIS,盖要根据功能划分为多个控件。 划分控件需要根据不同的数据结构和系统模型进行具体分析, 要考虑以下几个方面的问题:

(1)控件间差别最大、控件内差别最小;

(2)纯设计用模块与将随集成系统发布的模块分开, 例如地图符号编辑、线型编辑器应与空间查询分析等模块分开;

(3)相同显示窗口的模块尽可能设计在统一个控件取;

(4)处理相同数据文件的模块尽可能设计在同一个控件里;

(5)剔除空间查洵分析控件中不必要的内容, 减少Internet下载的数据量。

考虑到以上因素,ComGIS可以划分为数据采集与编辑控件、 图像处理控件、三维控件、数据转换控件、地图符号 编辑/线性编辑控件、空间查询分析控件等。其中一些 无须进行二次开发的模块不一定以组件方式提供,比如 数据采集、数据转换、符号编辑/线型编辑等模块可以用 独立运行程序方式提供,数据转换模块还可以编译成动态连接库。

支持ActiveX组件开发的程序设计语言都可以用来开发 ComGIS软件,比如目前比较流行的VisualC++、BorlandC++、 Visual Basic、Delphi等等,其中前两种效率高、功能强, 较为常用。ComGIS开发要注意几个方面的问题:

(1)优化的代码和高效的算法尽管COM技术的二进制通信 具有很高的效率,与独立运行程序比较,OCX控件在运行 速度上仍有差距。不过我们的开发实践证明.采用高效的 算法并精心优化代码可以使软件整体效率有较大改善。 经过对比测试,我们研制的组件式GIS软件-ActWeMap, 在图形显示上比目前Windows95/NT平台上大多数商业化 GIS软件快,其中甚至包括非组件式的GIS软件。

(2)紧凑、简练的数据结构在能够充分表达地理信息并 能有效进行各种处理、分析的前提下,软件数据结构要 尽可能紧凑。这不仅吋以加快数据存取速度,同时 也为适应Internet传递的需要。

(3)流行GIS数据文件的数据引擎除提供与各种GIS 数据文件格式的数据转换程序外,ComGIS被设计为可以 直接访问多种数据格式也是一大特色。Intergraph的 GeoMedian可以直接访问MGE、Frame、ArcView、SDO等 著名软件的数据格式。ActiveMap也可直接访问MGE等 流行的数据格式,提高了数据共享方面的能力。