毕业论文:聊城市耕地预警系统.doc_第1页
毕业论文:聊城市耕地预警系统.doc_第2页
毕业论文:聊城市耕地预警系统.doc_第3页
毕业论文:聊城市耕地预警系统.doc_第4页
毕业论文:聊城市耕地预警系统.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科生本科生毕业论毕业论文(文(设计设计) ) 题题 目:目:聊城市耕地聊城市耕地预预警系警系统设计统设计 专业专业代代码码: : 070703 作者姓名:作者姓名: 赵赵国成国成 学学 号:号: 2007201977 单单 位:位: 环环境与境与规规划学院划学院 指指导导教教师师: : 肖肖 燕燕 2011 年年 5 月月 31 日日 聊城大学本科毕业论文(设计) 1 原创性声明 本人郑重声明:所提交的学位论文是本人在导师指导下, 独立进行研究取得的成果。除文中已经注明引用的内容外,论 文中不含其他人已经发表或撰写过的研究成果,也不包含为 获得聊城大学或其他教育机构的学位证书而使用过的材料。 对本文的研究作出重要贡献的个人和集体,均已在文中以明 确方式标明。本人承担本声明的相应责任。 学位论文作者签名: 日期 指 导 教 师 签 名: 日期 聊城大学本科毕业论文(设计) 2 目 录 1 1 引言引言-1 2 2 系统构建的相关理论和技术系统构建的相关理论和技术-1 2.1 相关理论 -1 2.1.1 组件式 GIS-1 2.1.2 预警的涵义 -2 2.2 系统相关技术 -2 2.2.1 Visual Basic.NET 简介-2 2.2.2 SuperMap 简介-3 2.2.3 SQL Server 2000 简介 -3 3 3 聊城市耕地预警系统的构建聊城市耕地预警系统的构建-3 3.1 系统定义 -3 3.1.1 系统的需求分析 -3 3.1.2 系统的支持模型 -4 3.1.3 系统可行性研究 -5 3.2 系统总体设计 -6 3.2.1 系统结构设计 -6 3.2.2 系统功能设计 -6 3.2.3 系统数据库设计 -7 3.3 系统详细设计 -7 3.3.1 系统的功能模块 -7 3.3.2 系统数据库 -8 3.3.3 用户界面设计 -10 3.4 系统的实现 -11 3.4.1 用户界面的实现 -11 3.4.2 数据库的实现 -11 3.4.3 GIS 功能的实现-12 4 4 结语结语-1818 聊城大学本科毕业论文(设计) 3 参考文献参考文献-1919 致谢致谢-2020 聊城大学本科毕业论文(设计) i 摘要摘要 耕地问题是我国面临的一个重大问题。近年来我国一直着力于经济的发展和 建设,同时我还应该保证我国的粮食增长的水平能够跟得上我们经济的发展。人 民生活水平的提高不仅要看经济的增长,还要看到我们衣食住行的方方面面。基 本的生活保障是要吃的饱,对于粮食的监督就显得尤为重要,对耕地状况的合理 控制是更好的发展经济的前提。本文以基于 Visual Basic.NET 为平台进行,运 用 SuperMap 开发组件和 SQL Server 数据管理,对聊城市各区县耕地质量状况进 行评价,为决策者提供直观的分析数据。 关键词关键词:耕地状况;目标预警系数;耕地压力指数;VB.NET;SuperMap;SQL Server 聊城大学本科毕业论文(设计) ii Abstract Cultivated land problem is our country faces a significant problem. In recent years, China has been dedicatively economic development and the construction of, I also should ensure that our food the level of growth to get our economic development. The improvement of peoples living standard should not only see economic growth, but also see us all aspects shelter and food. The basic life safeguard is to eat the food of supervision for full, is particularly important for cultivated land condition, the reasonable control is better economic development premise. Based on Visual B platform, use for SuperMap development kit and SQL Server data management, each district and county of liaocheng city quality of cultivated land condition for policy makers to evaluate, provide intuitive analyzing data. Key words: Land status; Target early warning coefficient; Land pressure index; VB.NET;SuperMap;SQL Server 聊城大学本科毕业论文(设计) 1 聊城市耕地预警系统聊城市耕地预警系统 1 1 引言引言 耕地问题是农业面临的巨大大挑战。虽然我国提出了严格的耕地保护制度和 耕地总量动态平衡制度,但未来耕地面积减少将是一种不可避免的长期趋势,这 种趋势只能减缓而不能遏制,18 亿亩耕地红线面临最为严峻的考验。目前我国 人口耕地不到 0.1 公顷,不到世界平均水平的 1/2,不到发达国家的 1/4,只有美 国的 1/6、阿根廷的 1/9、加拿大的 1/141。 聊城市位于山东西部,黄河下游,属于黄淮海平原。地处 3547N3702N 和 11516E11632E 之间。全境东西直距 114 km,南北直距 138 km,土地总 面积 871 457.15 hm2 ,以 2005 年为例,聊城市土地利用率为 97.45%。在已经利 用的土地中,农业用地约为 68 万公顷,约占土地总面积的 79%。 影响聊城市耕地的不能单从耕地的数量来判断,还要从耕地的质量、对当地 人民生活的影响程度上有一个全面的了解。由于耕地的状况没有一个严格的数据, 所以要让不同时期同一地区的耕地数据进行比较得出一个较为科学的数据。 耕地预警系统是以国民耕地的状况为实际背景,为满足我国农业能够承担起 十几亿人民的粮食问题而进行的。可以为聊城市的经济发展提供必要的参考数据, 在发展经济的同进更好的兼顾粮食的问题,使经济能够更快更好地发展。 2 2 系统构建的相关理论和技术系统构建的相关理论和技术 2.12.1 相关理论相关理论 2.1.1 组件式 GIS 组件式软件技术已经成为当今软件技术的潮流之一,为了适应这种技术潮流, GIS 软件象其他软件一样,已经或正在发生着革命性的变化,即由过去厂家提供 了全部系统或者具有二次开发功能的软件,过渡到提供组件由用户自己再开发的 方向上来。无疑,组件式 GIS 技术将给整个 GIS 技术体系和应用模式带来巨大影 响。 组件式 GIS 的基本思想是把 GIS 的各大功能模块划分为几个控件,每个控件 聊城大学本科毕业论文(设计) 2 完成不同的功能。各个 GIS 控件之间,以及 GIS 控件与其它非 GIS 控件之间,可 以方便地通过可视化的软件开发工具集成起来,形成最终的 GIS 应用。控件如同 一堆各式各样的积木,他们分别实现不同的功能(包括 GIS 和非 GIS 功能),根据 需要把实现各种功能的 “积木”搭建起来,就构成应用系统2。 2.1.2 预警的涵义 耕地预警系统的目标 (1) 正确评价当前耕地在质量和数量上所处的状态,恰当地分析影响耕地 发展态势的各种自然、社会、经济及政策时代因素,全面认识耕地变化对粮食安 全所造成的影响。 (2) 预测未来耕地系统数量增减和质量升降超过临界值的时空范围和危险 程度,在耕地变化对粮食安全造成不良影响之前,及时发出预警信息,防止耕地 资源状态进一步恶化。 耕地预警系统的作用:主要在于描述和揭示耕地质量和数量变动趋势,勾画 未来的耕地利用方式、结构与供求关系轮廓,为正确确定耕地计划、目标与方向, 选择最优决策和最优方案提供依据,从而确保区域耕地安全,为粮食安全做出贡 献4。 2.22.2 系统相关技术系统相关技术 2.2.1 Visual Basic.NET 简介 Visual Basic.NET 是从 Visual Basic 语言演变而来,是一种为高效地生 成类型安全和面向对象的应用程序而设计的语言。Visual Basic 允许开发人员 开发面向 Windows、Web 和移动设备的程序。与所有面向 Microsoft .NET Framework 语言一样,使用 Visual Basic 编写的程序都具有安全性和语言互操 作性方面优点。VB. net 的版本号是 VisualBasic7.0,它的运行是建立在 CLR (CLR 是公共语言运行时,Common Language Runtime 和 Java 虚拟机一样也是一 个运行时环境,它负责资源管理(内存分配和垃圾收集) ,并保证应用和底层操 作系统之间必要的分离。) 和 MSIL (MicrosoftIntermediateLanguage, 一种类 似 Java 字节码的语言,也是为了能在不同平台移植所生成的中间代码。)虚拟器 上的。其实,它的机制和 Java 差不多5。 在系统中的作用是建立系统的用户界面部分,为用户提供人性化的数据管理 界面。 聊城大学本科毕业论文(设计) 3 2.2.2 SuperMap 简介 SuperMap GIS 是北京超图软件股份有限公司研究、开发、推广的,依托中 国科学院强大的科研实力,研制出的新一代地理信息系统软件,形成的全系列 GIS 软件产品。基于 SuperMap GIS 软件平台开发 GIS 应用系统,可以根据用户 的需要开发其它领域的应用系统。可以直接为最终用户开发 GIS 应用系统,也可 以与开发商和系统集成商合作为最终用户提供服务。与开发商和系统集成商的合 作方式包括:直接参与项目开发、为用户定制专业 GIS 应用模块、提供成熟的行 业应用源代码和解决方案6。 在系统中的作用是建立空间数据,为用户进行二次开发提供相应的组件。 SuperMap Object 是一个组件式 GIS 平台软件,由 GIS 组件来完成 GIS 的工作, 其余的可由其他组件去完成,GIS 组件与其他组件之间的联系由 VB.NET 来实现。 SuperMap Object 是由一系列的 ActiveX 组件构成的,包括核心组件、空间分析 组件等7。 在本系统中用到的组件有:必选的核心组件 SuperMap Control 和 SuperWorkspace Control,功能是工作空间管理、多源数据源集成、图属交互查 询分析,以及地图显示,图层控件、专题地图;可选组件用到了制图组件 Layout Control,功能是可视化地图排版、地图的制作与输出。 2.2.3 SQL Server 2000 简介 SQL Server 2000 是首次针对 XML 语法支持的数据库系统,因此在使用上更 加广泛。而 Microsoft 又将 SQL Server 2000 版本定位在 Microsoft.NET Enterprise Server 的.NET 服务器产品内,同时也是集成其他服务器产品的最佳 利器,所以 SQL Server 2000 是我们必备的工具之一。 3 3 聊城市耕地预警系统的构建聊城市耕地预警系统的构建 3.13.1 系统系统定义定义 3.1.1 系统的需求分析 近年来,聊城市的经济发展水平正不断提高,同时耕地面积和耕地的质量也 越来越让人担忧。耕地作为农业中重要的一环,聊城市的耕地面积从 2005 年占 总土地面积的 65% 不断减少。工业的和房地产业的发展在不断减少原有的耕地 聊城大学本科毕业论文(设计) 4 数量,同时,耕地的土壤质量也每况愈下。耕地的质量与粮食的产量是关系到人 民生活水平的重要标准,对耕地能否满足人民生活需要的监督与预警是很有必要 的。政府部门需要有一个耕地预警系统来为平时的决策做技术支持,民众也需要 对相关的信息进行了解。 3.1.2 系统的支持模型 在耕地预警中的指标可以有两项:目标预警系数、耕地压力指数。 目标预警系数 R:侧重耕地质量预警,它通过耕地质量参评因子实测值来反 应耕地质量变化的程度。可以表示为: 其中:Ti和 Tj分别表示预警年份和基准年耕地基础地力总量; X 为与基准年相比人口增加数量; N 为基准年人均基础地力产量。 耕地基础地力总量可以表示为: T=IPM 其中:T 为区域耕地基础地力总量; I 为地力贡献率, 它与土壤质量指数有显著的正相关, 可根据第二次土壤 普查数据和土壤质量指数的监测数据,建立两者之间的回归模型; P 为区域耕地平均粮食单产; M 为区域耕地面积。 耕地压力指数 K :是人均所需最小耕地面积与实际人均耕地面积之比, 它是一个随时空变化的变量, 能够反映耕地面积变化程度, 可以衡量一个地区 耕地资源的紧张程度。计算公式为: 其中: Smin为最小人均耕地面积 (hm2) K 为耕地压力指数; 聊城大学本科毕业论文(设计) 5 Sa为实际人均耕地面积 (hm2) 其中: 为粮食自给率 (%) ;粮食自给率的概念:粮食的自给率就是在 一定时期内一个自己生产和储备的能够用来满足消费的粮食与粮食总需求之比. 粮食自给率有狭义自给率和广义自给率,狭义自给率就是指即期的粮食产量、粮 食储备与粮食需求之比.广义的自给率还应包括不纳入粮食范畴,但是可以作为粮 食的替代物品. Gr 为人均粮食需求量 (kg) ,根据不同地区需要为一个常数; P 为粮食单产 ( kg/hm2 ) ; Q 为粮食播种面积占耕地面积的百分比(%) 。 推导可知只要知道各区县每年的人口(X) 、耕地面积(M)、粮食种植面积 (S) 、粮食产量(G) 、地力贡献率(I)和粮食自给率() ,就可以得到相应的 目标预警系数(R)和耕地压力指数(K)的值。目标预警系数为两个特定年份的 比较值,耕地压力指数为某一年份的值。 3.1.3 系统可行性研究 从数据源上来讲,数据源主要来自于国土资源局的统计。可以以年为周期来 对当地进行统计。 从技术方面讲,系统主要是 GIS 软件的二次开发。耕地预警系统主要的功能 包括对聊城市不同区县的地理信息相关数据进行记录,对相关数据进行处理,以 及对统计结果的展示。 系统的界面用 Visual Basic.NET 来制作,可以方便制作出需要的用户 UI 界 面;后台的数据用 SQL Server 管理,可以方便的对数据添加、更新和删除;地 理信息的管理可以用 SuperMap 来实现。在 SuperMap 的产品中,SuperMap Deskpro 是用于地理空间数据处理与析建模的大型桌面 GIS 软件,用于对地理信 息进行矢量化,SuperMap Object 是适合大型专业应用系统建设的全组件式 GIS 开发平台,可以与 VB.NET 很好的结合。 从技术上讲这个系统是可行的。 从经济角度讲,进行耕地预警系统的研究是以国民经济运行出现的粮食耕地 聊城大学本科毕业论文(设计) 6 方面出现重大问题为背景,为了更快更有效的对我国的粮食耕地状况进行监督的 一个手段,粮食问题就是民生问题,稳定的粮食供应是社会安定团结、经济快速 发展的保障。所以耕地预警不能从经济上带来直接的收益,但是政府部门的决策 有很重要的指导意义,可以让从大局上让我们的经济稳定的发展。 3.23.2 系统总体设计系统总体设计 耕地预警系统是一个不断对数据进行更新,产生结果灵活的一个系统。主是 是由于系统的输出结果不能够单一的存储在一个空间数据库当中。目标预警系统 R 是通过不同年份的数据进行比较得到的一个对于一定阶段有指导意义的数据, 比如东昌府区 2011 年相比于 2007 年的目标预警系统为多少;而且随着年份不断 增加,以年份为单位计算的耕地压力指数 K 也在不断增加,所以在根据 SuperMap 数据源存储的信息来看,用于展示的目标预警系数 R 和耕地压力指数 K 只能是通过数据库的不同年份数据进行提取、计算,再导入到空间数据源中进 行展示输出。 3.2.1 系统结构设计 耕地预警系统的结构分为:用户模块;系统模块;数据管理模块。如图 1 所 示。 图 1 耕地预警系统的结构图 Figure 1 Armland structure of early warning systems 3.2.2 系统功能设计 用户管理模块的功能:能够对用户进行分类,将用户分为管理员用户和普通 用户,管理员用户可以对数据进行修改,普通用户只能进行查询。 系统模块的功能主要是将 UI 界面、GIS 软件和数据库进行连接。对地图进 地图属性数据输 入入 预警结果输出地图控制 耕地预警系统 地图空间数据地图属性数据DBS 数据库 聊城大学本科毕业论文(设计) 7 行基本的操作,如漫游、放大、缩小等;地图属性数据的输入;输出区县耕地情 况的预警图,根据不同的目标预警系数和耕地压力指数,可以对不同区县的耕地 状况进行一个直观的展示。 数据管理模块的功能:是存储地图空间数据、地理属性数据,能够对地图空 间数据进行展示,对地理属性数据进行添加、更新、删除。 3.2.3 系统数据库设计 根据系统数据的要求,对系统管理进行分析,应该采用文件结合关系数据库 管理数据,如图所示。空间数据通过文件管理,非空间属性数据利用数据库管理。 如图 2 所示。 数据库 地理属性数据 地理空间数据 耕 地 预 警 系 统 用户输入 地图输出 图 2 数据的管理图 Figure 2 Data management plans 3.33.3 系统详细设计系统详细设计 3.3.1 系统的功能模块 用户管理模块的功能:区分普通用户与管理员用户。如图 3 所示 聊城大学本科毕业论文(设计) 8 登陆界面 登陆账号、密码 选择用户类型 用户类型是 否正确 进入相对应的 用户界面 提示输入错误并 且重新输入 N Y 图 3 用户管理模块功能流程图 Figure 3 Features user management module flow chart 系统模块的功能:所有用户都有的功能是地图控制、地理属性显示、成果输 出;管理员用户的功能比普通用户多了数据输入的功能。 地图控制、地理属性显示等功能可以用 SuperMap Object 控件进行操作。 在实现数据输入和数据管理模块功能时,如图 4 所示。 输入数据 各数据项是 否全部填写 数据库中是 否有相同 ID 是否对有记 录进行更新 对数据库进行更新 报错,重新 输入数据 对数据库进 行添加操作 返回输入界 面 Y Y Y N N N 图 4 系统模块功能流程图 Figure Functional flow chart of system module 3.3.2 系统数据库 数据库的需要存储的数据包括:地理空间数据;用户信息;各区县相应的统 聊城大学本科毕业论文(设计) 9 计数据。 地理空间数据存储在 SuperMap 的数据源当中,要对聊城市进行空间矢量数 据的建立,在 SuperMap Deskpro 中进行操作。 表 1:USER 列名数据类型允许空默认值定义 IDINT否* 编号 NAMECHAR 24否账号 CODECHAR 24否密码 TYPEINT否用户类型 ID 为编号,可以自动生成。 NAME 为账号名,不得超过 24 位。 CODE 为账号密码,不得超过 24 位。 TYPE 为用户类型,取值为 0、1、2,0 为最高权限用户,1 为管理员用户, 2 为普通用户。 表 2:LCDATE 列名数据类型允许空默认值定义 IDINT否*整体编号 QXNAMETEXT区县名 POPLONG0人口数量 GDMJFLOAT0耕地面积(公顷) LSMJFLOAT0粮食种植面积(公顷) LSCLFLOAT0粮食产量(千克) LSZJLFLOAT0粮食自给率 DLGXLFLOAT0地力贡献率 ID 是根据输入的年份和区县的名称制定的,格式为 XXXX(年份)+ XXX(区 县编号) ,如 2011001。其中区县编号为: 表 3:区县编号 区县东昌府茌平东阿高唐冠县临清莘县阳谷 聊城大学本科毕业论文(设计) 10 编号001002003004005006007008 其余数据均为当地统计数据,由管理员通过界面输入进数据库中。 3.3.3 用户界面设计 登陆界面:如图 5。 图 5 登陆界面 Figure 5 Login screen 系统界面管理员用户版如图 6 所示。 系统界面普通用户版如图 7 所示,其中方框区域表示普通用户不能操作的地 方,即不能对数据进行修改操作。 图 6 系统界面之管理员界面 聊城大学本科毕业论文(设计) 11 Figure 6 System interface of the administrator interface 图 7 系统界面之用户界面 Figure 7 System interface of the user interface 3.43.4 系统的实现系统的实现 系统的实现主要有用户 UI 界面的实现、GIS 功能的实现和数据库操作的实 现。 3.4.1 用户界面的实现 用户界面中用到 VB.NET 窗体控件有: Button :是按钮控件,用于触发事件。 ComboBox :用于对区县名进行选择,因为区县名是不可随便输入的,只能 选择。 Label :用于文本提示。 TextBox :用于输入各项数据。 3.4.2 数据库的实现 创建一个 SQL Server 数据库的连接。在窗体中加入常用的数据库组件: SqlDataAdapter 是 DataSet 和 SQL Server 之间的桥接器,用于检索和保 存数据。SqlDataAdapter 通过对数据源使用适当的 Transact-SQL 语句映射 Fill(它可更改 DataSet 中的数据以匹配数据源中的数据)和 Update(它可更 改数据源中的数据以匹配 DataSet 中的数据)来提供这一桥接。当 聊城大学本科毕业论文(设计) 12 SqlDataAdapter 填充 DataSet 时,它为返回的数据创建必需的表和列。 SqlConnection 对象表示与 SQL Server 数据源的一个唯一的会话。 SqlCommand 表示要对 SQL Server 数据库执行的一个 SQL 语句或存储过程。 通过这一方法可以将 SQL 语言引入程序中使用。 使用 SQL 语言可对表中的内容进行查询、增加、更新和删除等操作。通过将 查询的内容进行运算得到各区县的目标预警系数和耕地压力指数的值,再对空间 数据源中的属性进行修改。 3.4.3 GIS 功能的实现 用到 SuperMap Object 的控件对空间数据进行管理。在 COM Components (COM 组件)选项卡上选中“SuperMap 控件” 和“SuperWorkspace 控件” ,点 击确定。工具箱上就会多出如下图 8 所示的两个控件: 图 8 SuperMap 控件 Figure 8 Control 将 SuperMap Control 添加到窗体中并命名为 AxSuperMap1,SuperWorkSpace Control 添加到窗体中并命名为 AxSuperWorkspace1。 打开数据源的设计代码为: Private Sub frmMap_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 建立地图窗口与工作空间的联系,用于显示数据 AxSuperMap1.Connect(AxSuperWorkspace1.CtlHandle) Dim strAlias As String 数据源别名 Dim nEngineType As SuperMapLib.seEngineType 数据源引擎类型 Dim strDataSourceName As String 数据源所在路径 Dim objDataSource As SuperMapLib.soDataSource 数据源对象,指向打开的数据源 Dim bReadOnly As Boolean 数据源是否只读打开 Dim objLayer As SuperMapLib.soLayer 图层对象变量,指向将要打开的图层 Dim bAddToHead As Boolean 是否将数据集加到地图最上一层显示 Dim i As Short 数据集索引 strAlias = “聊城市耕地预警系统“ 别名可任意,但建议叏数据源文件名相同的名称,便于区分 nEngineType = SuperMapLib.seEngineType.sceSDBPlus 可打开不同引擎的数据源,此处打开文 件型 SDBPlus strDataSourceName = “C:MyProjectLC聊城市耕地预警系统.sdb“ 数据源所在路径,也可以是相对 路径 bReadOnly = False 非只读打开 聊城大学本科毕业论文(设计) 13 打开数据源 objDataSource = AxSuperWorkspace1.OpenDataSource(strDataSourceName, strAlias, nEngineType, bReadOnly) If objDataSource Is Nothing Then MsgBox(“打开数据源失败!“, MsgBoxStyle.Information) MsgBox(“请将数据源文件聊城市耕地预警系统.sdb,聊城市耕地预警系统.sdd)下载到 C:MyProject根目录下,再运行程序“) Else For i = 1 To objDataSource.Datasets.Count 把数据源中的所有图层加入到 SuperMap 中显示 bAddToHead = True objLayer = AxSuperMap1.Layers.AddDataset(objDataSource.Datasets.Item(3), bAddToHead) objLayer = AxSuperMap1.Layers.AddDataset(objDataSource.Datasets.Item(8), bAddToHead) End Sub Private Sub frmMap_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed AxSuperMap1.Close() AxSuperMap1.Disconnect() AxSuperWorkspace1.Close() End Sub 地图控制的操作有全幅显示、自由缩放、放大、缩小和漫游功能代码为: Private Sub cmdButtonViewEntire_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButtonViewEntire.Click AxSuperMap1.ViewEntire() 全幅显示 End Sub Private Sub cmdButtonZoomFree_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButtonZoomFree.Click AxSuperMap1.Action = SuperMapLib.seAction.scaZoomFree 自由缩放 End Sub Private Sub cmdButtonZoomIn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButtonZoomIn.Click AxSuperMap1.Action = SuperMapLib.seAction.scaZoomIn 放大 End Sub Private Sub cmdButtonZoomOut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButtonZoomOut.Click AxSuperMap1.Action = SuperMapLib.seAction.scaZoomOut 缩小 End Sub Private Sub cmdButtonPan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButtonPan.Click AxSuperMap1.Action = SuperMapLib.seAction.scaPan 漫游 End Sub 对地图属性进行修改,用于进行地图成图,即对其中的目标预警系数 R 和耕 地压力指数 K 进行修改。如图 9 所示。 图 9 空间属性数据 聊城大学本科毕业论文(设计) 14 Figure 9 Spatial attribute data 点击“进行评估”按钮,进入选择。如图 10 所示。 图 10 评估项目选择界面 Figure 10 Assessment of project selection interface 以对目标预警系数的展示为例,代码为: Private Sub Rbutton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rbutton.Click Dim j As Integer Dim r(9) As Integer Dim objdtv As soDatasetVector 数据集 Dim objdt As soDataset Dim objRs As SuperMapLib.soRecordset 记录集对象 Dim objOutputFields As New soStrings Dim objlayer As soLayer 数据层 Dim objThemeRange As soGridThemeRange objThemeRange = objlayer.GridThemeRange objlayer = SuperMap1.Layers(1) objdtv = AxSuperMap1.Layers(2).Dataset For j = 1 To 8 objRs = objdtv.Query(“SmUserID = “ + j, False) objRs.MoveFirst() objRs.Edit() objRs.SetFieldValue(“R“, r(j) objRs.Update() Next If objThemeRange.Valid Then MsgBox(“地图已经在图层中创建!“, vbInformation) objThemeRange = Nothing objlayer = Nothing Else Dim i, nClasses As Integer Dim objColors As New soColors Dim objStyle As New soStyle objThemeRange.Caption = “R“ objThemeRange.Enable = True nClasses = 8 等级数 objThemeRange.Make(scrConstant, nClasses, 0.1) objColors.MakeGradientColorset(nClasses, RGB(204, 235, 255), RGB(5, 118, 240) 每级有不同的颜色 聊城大学本科毕业论文(设计) 15 For i = 1 To nClasses objThemeRange.Style(i) = objColors.Item(i) Next i SuperMap1.Refresh() Select Case MsgBox(“删除已有的地图?“, vbYesNo) Case vbYes objlayer.DeleteThematicMap(objThemeRange.Caption) SuperMap1.Refresh() Case vbNo End Select End If AxSuperGridView1.Connect(objRs) AxSuperGridView1.Update() objlayer = Nothing objThemeRange = Nothing objStyle = Nothing objColors = Nothing End Sub 地图输出如图 11 所示。 图 11 选择地图输出形式的界面 Figure 11 Select the output form of the map interface 代码为: Private Sub outtoprint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuouttoprint.Click 输出到打印机,put to printer Dim blnResult As Boolean blnResult = AxSuperMap1.PrintMap(sePageBorder.scbNone, False, True, True, True) If blnResult = False Then MsgBox(“输出到打印机失败!“) Exit Sub End If End Sub Private Sub outtobmp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) 聊城大学本科毕业论文(设计) 16 Handles mnuouttobmp.Click 输出为bmp,out put to bmp Dim strbmpfilename As String Dim strDPI As String Dim nDPI As Long Dim blnResult As Boolean strDPI = InputBox(“请输入输出的DPI(建议采用-600dpi输出)“, “输出图片“) nDPI = Trim(strDPI) With dlgsavefile .Title = “输出位图文件“ .Filter = “位图文件(*.bmp)|*.bmp“ .InitialDirectory = “SampleDataMap_Output“ .FileName = “ .ShowDialog() End With If dlgsavefile.FileName 0 Then objlys.RemoveAll() End If AxSuperWkspManager1.Refresh() 将得到的影像数据集添加在地图窗口,add the image_dataset in SuperMap objDt = objds.Datasets(strImageName) objlys.AddDataset(objDt, True) AxSuperMap1.Refresh() Else MessageBox.Show(“输出为影像数据集失败!“, “信息提示“) 聊城大学本科毕业论文(设计) 17 Exit Sub End If ReleaseComObject(objDss) objDss = Nothing ReleaseComObject(objds) objds = Nothing ReleaseComObject(objDt) objDt = Nothing ReleaseComObject(objlys) objlys = Nothing End Sub Private Sub outtoother_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuouttoother.Click 输出数据集到图片框,out put to picturebox Dim f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论