首页 百科知识 系统编程实现

系统编程实现

时间:2022-11-11 百科知识 版权反馈
【摘要】:本系统的主要功能模块是应用工具型地理信息系统MapInfo的二次开发语言MapBasic进行开发的。根据城镇土地优化配置与集约利用潜力评价的要求,整个信息系统由五个子系统组成。每个子系统的主菜单均由自主研发菜单和MapInfo固有菜单两部分组成。样地评价系统主要包括典型宗地评价、查询与统计、菜单转换三个自主研发菜单。出现在对话框中的每一项称为控件。系统功能是通过点击菜单或按钮从而调用相应的处理程序来实现的。

8.1.7 系统编程实现

本系统的主要功能模块是应用工具型地理信息系统MapInfo的二次开发语言MapBasic进行开发的。采用结构化程序设计方法,按照从整体到局部、由主到次的原则,先构建城镇土地优化配置与集约利用潜力评价的主系统模块——整个系统由总体评价系统、功能区评价系统、样地评价系统、优化配置系统及城镇土地定级估价系统构成;然后开发各子系统的功能菜单;最后编写对应于各菜单的具体程序。

1.系统主功能界面

系统的主功能界面如图8-5所示。

img218

图8-5 系统主功能界面

2.主菜单设计

根据城镇土地优化配置与集约利用潜力评价的要求,整个信息系统由五个子系统组成。每个子系统的主菜单均由自主研发菜单和MapInfo固有菜单两部分组成。

总体评价系统主要包括潜力计算、景观格局分析、结果输出、查询与统计、菜单转换等五个自主研发菜单。功能区评价系统主要包括功能区划分、指标分值量化、商业区评价、住宅区评价、工业区评价、其他功能区评价、结果查询、菜单转换等八个自主研发菜

单。样地评价系统主要包括典型宗地评价、查询与统计、菜单转换三个自主研发菜单。优化配置系统主要包括优化配置、查询与统计、菜单转换三个自主研发菜单。城镇土地定级估价系统主要包括手动分布操作、数据维护、因素因子权重、因素因子分值、土地级别划分等五个自主研发菜单。利用“菜单转换”功能可以方便地在所属子系统和MapInfo标准菜单之间自由转换。

子系统界面主菜单的创建用MapBasic语言的Create Menu Bar语句实现,以总体评价子系统菜单的创建为例说明(见图8-6):

img219

图8-6 总体评价系统菜单设计布局图

Create Menu Bar As

″文件″,

″潜力计算分析″,

″景观格局分析″,

″结果输出″,

″地图″,

″浏览″,

″查询与统计″,

″选项″,

″菜单转换″,

″窗口″。

3.子菜单设计

子菜单的设计用Create Menu语句实现。以总体评价中“景观格局分析”菜单的子菜单设计为例说明:

Create Menu″景观格局分析″As

″创建景观格局图″as″创建景观格局图″,

″打开景观图”calling opentab,

″(-″,

″分析信息″as″分析信息″

Create Menu″创建景观格局图″As

″创建辐射区″calling fsx,

″创建环形区″calling hxx,

″创建景观区″calling jgq

Create Menu″分析信息″As

″扇形信息分析″calling shanxing,

″环形信息分析″calling huanxing,

″景观区信息分析″calling jingguanqu

这三个Create Menu语句分别建立基于一级菜单“景观格局分析”的下拉式分级菜单。子菜单的布局见图8-6。

4.对话框设计

1)标准对话框设计

使用Note语句显示一个有关提示信息并带有一个“确定”按钮的简单对话框即属于标准对话框。例如在功能区评价系统中采用宗地法划分评价单元时,应根据不同的评价区面积确定所划分评价单元的最小宗地面积,程序设计如下:

img220

2)自定义对话框设计

使用MapBasic提供的Dialog语句可以建立自定义对话框。自定义对话框设计的优劣体现了人机交互的难易程度。总体评价系统中“景观格局分析”菜单的“创建环形区域”对话框设计如图8-7所示,具体程序编写在此略去。

img221

图8-7 “创建环形区域”对话框

出现在对话框中的每一项称为控件。在“创建环形区域”对话框有StaticText静态文本控件、EditText输入文本控件、GroupBox组合框控件、Picker获取对象类控件、ListBox列表框控件、PopupMenu下拉列表框和Button按钮。

5.子程序编写与模型实现

系统功能是通过点击菜单或按钮从而调用相应的处理程序来实现的。这时计算机执行指令代码,完成一系列的计算分析功能。下面是总体评价系统的核心模块“集约度计算”的部分代码,按照集约度模型实现了功效值的计算。

img222

img223

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈