登录
首页 » Others » 地理信息系统二次开发实例教程-c#+ArcGis

地理信息系统二次开发实例教程-c#+ArcGis

于 2020-12-05 发布
0 350
下载积分: 1 下载次数: 2

代码说明:

地理信息系统二次开发实例教程-c#+ArcGis面,包括需求分析、数据管理设计、用户界面设计、设计模式在软件开发中的应用。在开发过程中应用软件工程技术,可以提高软件开发效率和质量。第章“需求分析”介纽了“北京市地理信息公众查询系统”的需求分析,包括需求概述、功能需求以及功能需求详细描述。第章“系统总体设计”介绍了系统平台选择、系统总体框架、系统数据组织及系统开发进度安排等。第章“系统详细设计”根据系统的总体设计结构分别从北京市地理信息公众查询系统的数据库设计和一些相关类的设计两方面米详细阐述系统的设计。第章“系统主界面的实现”首先简单介绍的功能、特点、结构及其数据源,然后介绍如何设计系统的主界面及主要实现代码。第章“选择与査询功能的实现”主要介绍如何通过查询与数据集有关的衣从数据中获取信息,以及如何通过空间和逻辑的查询方法从数据中获取信息。第章“系统其他辅助功能”介绍了系统中其他一些辅助功能的实现,例如当鼠标移动到某地物上并稍做停留后,岀现一个小标签,显示该地物的名称,以及距离量算、面积量算的实现,等等。为了让读者更加全面地掌握的廾发,第章介绍了“北京市地理信息公众査询系统”开发过稈中没有涉及到的一些对象,包括投影对象、地址匹配对象、动态跟踪层(对象与地理事件()对象。科海网站提供了本书涉及的所有源代码,以及实现书中内容所需的所有组件。读者可以从中下载这些资料。由于时间仓促,书中难免有一些错误、遺漏,恳请读者谅解,并提出批评和指正编者2004年5月日录第章地理信息系统软件工程软件工程简介基本概念软件系统开发过程开发过程模型需求分析需求获取需求规约数据管理设计全部采用文件管理文件结合关系数据库管理全部采用关系数据库合理采用面向对象数据库管理用户界面设计界面设计原则界面设计中的要素界面样式应用模式与开发方式应用模式开发方式“北京市地理信息公众查询系统”介绍第章需求分析需求概述功能性需求系统体系结构用户描述具体功能需求非功能性需求功能需求详细描述第章系统总体设计系统平台选择便件平台目录系统操作平台数据库平台系统川发模式与组件选择开发工具系统总体框架系统功能框架系统数据库系统的川发结构系统界面组织系统数据组织系统数据的逻辑组织系统的主要数据类型进度规划第章系统详细设计数据库详细设计地名分类编码元数据表结构电子地图数据系统相关类的详细设计辅助类的详细设计类的详细设计类的详细设计类的详细设计类的详细设计第章系统主界面的实现简介的功能的特点的结构的数据源建立项目加入地图控件加入其他引用创建位图资源主窗体的实现界面设汁基本编码类的初步实现目录辅助类的实现类的成员变量读取元数据创建主窗口中的工作区创建I作区创建“地图”选项卡创建“查询”选项卡创建“帮助”选项卡图层的加入与控制在地图中加入图层依据比例尺控制图层显小通过“地图”选项卡控制地图显示控制显示的地物类型控制地图显示区域地图的放大、缩小、全图显示和漫游其他辅助功能的实现鹰眼功能的实现显示经纬度第章选择与查询功能的实现选择地物查询地物信息地名查询查找最近地物公交查询公交站点与线路查询乘车路线询地名索引查洎绀果的定位与更详细信息最短路径查询第章系统其他辅助功能地名的快速显示距离量算与面积量算其他工具栏按钮功能的实现地图输出子系统的实现在线帮助子系统的实现第章的其他对象动态跟踪层对象与对象目录对象的属性对象的方法对象的属性对象的方法实例应用投影对象坐标系地图投影地理编码用于地址匹配的专用文件绘制街道文件地理编码对象地址定位对象地址标准化对象交耳式地址兀配批地址匹配第章地理信息系统软件⊥程在地理信息系统(开发过程中应用软件工程技术,可以提高软件开发效率和质量。本章首先介绍了软件工程的基本概念、软件系统开发过程和开发过程模型。然后讲述了软件工程技术在系统廾发中的应用:需求分析、数据管理设计、用户界面设计、设计模式在软件开发中的应用。这些方面涉及了开发过程中的不同阶段及不同层次,有些方法之间是互斥的,如和方法,但是软件工程技术最重要的特点是实用,开发者可以根据只体情况选用不同的技术。软件工程简介基本概念计算机软件工程是一类求解工程。它应用计算机科学、数学、工程科学及管理科学等原理,借鉴传统工程的原则、方法创建软件,以达到提高软件质量、降低开发成本的目的。其中,讣算杋科学、数学用于构造模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于管理计划、资源、质量、成本等。从学科角度来看,软件⊥程是·门指导计算机软件开发和维护的上程学科。软件工程的提出是为了解决世纪年代出现的软件危机,当时在大型软件开发项日中存在着成本髙、开发进程不易控制、开发工作量难于估算、软件质量低、项目失败率高等诸多闩题,给软件行业带来了巨大的沖击。软件工程提出了一系列理论、原则、方法及工具,试图解决这种软件危机。和其他工程一样,软件工程有自己的目标、活动和原则,其框架可以概括为图所示的内容。分多//算持开发范型需现设计方法支持过程求管理过程图软什工稈框架第章地理信息系统软件工程软件工程的目标可以概括为“生产具有正确性、可用性及开销合宜的宀品”,其活动包括需求、改计、实现、确认及支持等。围绕工程设计、支持及管理,软件工程有以下条基本原则:)选取适宜的廾发模型。选取适宜的廾发模型可以利」认识需求易变性并加以控制以保证软件产品满足用户的需求〔)采用合适的设计方法。通常要考虑实现软件的模块化、抽象与信息隐藏、本地化致性及适应性等特征。()提供高质量的工程支持。在软件工程中,软件工具与环境对软件过程的支持颇为重要。()重视开发过稈的管理。开发过程的管理直接影响可用资溟的有效利用、最终的软件产品的满意度,软件组织的生产能力等问题。只有对开发过程实施有效管理,才能实现有效的软件工程软件工程把软件工程的思想和方法应用于软件的开发过程。如前所述,软件工程活动包括需求、设计、实现、确认及支持等,它们对应」软件廾发过程的不同阶段。般来说,软件开发都要经历从分析设计到实现确认的过程。每个阶段按照相应的规范进行工作,并得到该阶段的成果,是保证整个开发过程戊功的关键。软件系统开发过程前面讲过,软件工程活动包括需求、设计、实现、确认及支持,它们对应于整个软件开发过程的不同阶段。需求分析需求分析阶段处于软件开发过程的前期,其基本活动是准确定义未来系统的目标,确定为满足用户的需求必须做什么。需求分析又划分为两个阶段,即需求获取和需求规约前者用自然语言清楚地描述用广的需求,而后者的目的是消除获取需求的二义性和不致性。在软件项目的生命周期中,一个错误发现得越晩,修复错误的代价也越髙,所以,高质量的需求工程是软件项目得以正确、高效完成的前提。对于系统分析人员,建立需求面临着以下个方面的困难:·问题空间的理解系统开发人员通常是计算机专业人员,难以深入理解各种业务系统所憂解决的问题空间。人与人之间的通信对于系统分析人员而言,通信主要包括同用户的通信以及同事之间的通信,由于自然语言的二义性,会给准确刻田需求造成障碍。·需求的不断变化造成需求变化的原因很多,包括技术、用户方、市场等等。作为分析人员,必须采用些策咯以适应变化。面向对象的分析方法被认为是解决上述闲难的较好技术,但是完整、准确地刻划问题空间始终是分析人员所面临的挑战第章地理信息系统软件工程系统设计一般来说,需求分析阶段的主要任务是确定系统“做什么”,而系统设计阶段则要解决“怎么倣”的问题。系统设计的任务是将系统分析阶段提出的逻辑模型转化为相应的物理模型,其设计的内容随系统的目标、数据的性质和系统的不同而有很大的差异。一般前言,首先应根据系统的目标,确定系统必须具备的空间操作功能,称为功能设计;其次是系统的建模和产品的输出,称为应用设计。系统设计是系统整个开发工作的核心,不但要完成熤辑模型所规定的任务,而且要使所改计的系统达到优化。所谓优化,就是选择最优方案,使系统具有运行效率高、控制性能好和可变性强等特点。要提高系统的运行效率,般要尽量避免中问文件的建立,减少文件扫摧的遍薮,并尽量采用优化的数据处理算法为增强系统的搾制能丿,要拟定对数字和字符岀错时的校验方法;在使用数据文件时,要设置口令,防止数据泄密和被非法修改,保证只能通过特定的通道存取数据。为了提高系统的可变性,最有效的方法是釆用模块化的方法,即先将氅个系统看成一个模块,然后按功能分解为若干个子模块。一个模只执行一种功能,一种功能只用一个模垗实现,这样设计出来的系统才能做到可变性好并具有生命力。功能设计又称为系统的总体设计,它的主要仟务是根据系统的目标来规划系统的规模,确定系统的各个组成部分,并说明它们在整个系统中的作用与相互关系,以及确定系统的硬件軋置,规定系统采用的合适技术规范,以保证系统总体目标的实现。图给出了通用的总体设计结构图。因此,系统的总体设计大致包括数据库设计硬件配置与选购软件设计等应用设计又称详细设计。详细设计包括详细的算法、数据表示和数据结构、实施的功能和使用数据之间的关系。详细改计过程中采用了一些工只,以便对数据、算法等进行描述,包括流程图、,问题分析图)、盒图(图)、伪码实现阶段软件实现阶段将设计的结果变换成程序设计语言编写的程序。一般情况下在实现阶段,首先要确定程序改计语言,其影响因素包括:开发人员对语言的熟悉程度、语言的可移植性、编译程序的效率、编译工具的支持等等。目前,语言是被普遍采用的构造系统软件的编程语言,而则更多地应用于编写网络应用程序。无论采用哪一种编程语言,都要求编写高质量的源稈序代码,稈序质量通常包含正确性、可读性、可移植性、程序效率等指标。考虑到系统的维护和演化,提髙源程序的可读性是实觋阶段的一个重要目标,其途径包括添加注释、规范书写格式、确定标认符命名原则、采用结构化的程序设计方法(不用或减少使用语句)等。

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 红外循迹小车VHDL
    【实例简介】用FPGA实现红外循迹小车程序,用VHDL书写。能沿着黑色轨道前进
    2021-11-15 00:32:04下载
    积分:1
  • 基于MSP430的PID控制的温度自动控制系统(序+报告).rar
    【实例简介】基于MSP430的PID控制的温度自动控制系统(程序+报告) 详细的报告 程序 PID算法解释 本系统严格按照题中所定参数及要求,构建了一个以MSP430单片机为控制核心的温度自动控制系统。该系统用PSB型负温热敏电阻作为温度传感器,以一种类R-F的方法测量木盒内实时温度,单片机用实时温度与预设温度值一起代入PID算式得出一个温度增量,再用此温度增量线性的控制PWM波的占空比,开关电源的输出电压也会随之变化,即制冷晶片的输入功率发生变化,因此制冷晶片制冷(加热)的功率随PWM波占空比变化,达到自动控温的目的。本系统制冷(加热)效果明显,效率高,界面友好,制作精致,能够胜任题中所定各项要求。
    2021-12-04 00:53:13下载
    积分:1
  • MATLAB工具包mmread函数mmread.zip
    MATLAB工具包mmread函数mmread.zip
    2020-12-04下载
    积分:1
  • matlab瑞利衰落信道仿真
    主要运用MATLAB进行编程,实现采用对输入信号进行抑制载波的双边带调幅;而后将调幅波输入信道,研究多径信道的特性对通信质量的影响;最后将信道内输出的条幅波进行同步解调,解调出与输入信号波形相类似的波形,观测两者差别。同时输出多普勒滤波器的统计特性图及信号时域和频域的输入、输出波形。
    2020-12-09下载
    积分:1
  • 图像降采样和升采样Matlab代码
    该代码实现了以2为因子的图像升采样和降采样功能。 降采样包括使用平滑滤波器(with using the averaging filter)和不使用平滑滤波器(without using the averaging filter)两种方法。 升采样包括像素点直接复制(pixel replication method)和线性插值(bilinear interpolatoin method)两种方法。 降采样方法和升采样方法共有4种组合。程序运行后,给出了一个原始图片和四个结果图片。 图片1.原始图片。 图片2.平滑滤波器降采样&像素点直接复制升采样。
    2021-05-06下载
    积分:1
  • Latex排版学习笔记
    Latex排版学习笔记,用于Latex学习入门与提高。共9章内容,较为全面。目录第一章基本使用1.1基本排版流程1.2文本排版..1.2.1英文文档12.2输入特殊字符1.2.3段落换行124中文文档777789991.3列表环境1.4文档结构101.4.1文档类别101.4.2标题摘要111.4.3章节目录1.4.4参考文献121.5插入表格131.5.1基本表格131.5.2跨列表格131.5.3浮动表格141.6插入图片151.6.1图文并排的小图片16.2图文分开的大图片161.6.3位置浮动的大图片17第二章格式调整21各种长度单位1922字体使用192.2.1字体编码193日录222字体族名20223字体系列20224字体形状20225字体大小23段落对齐2223.1居中对齐22232单侧对齐2224页面大小布局232.5目录页格式24第三章数学公式2631两种公式263.2各种字母273.3数学函数3.4配对括号283.5多行公式3.6定理环境31第四章图形绘制334.1画交换图3341.1用 ascd包画交换图3341.2用 diagrams包画交换图33413用ⅹy-pic包画交换图344.2画图语言和画图软件3543PGF/TkZ绘图364.3.1画流程图3643.2函数图像374.3.3几何图形第五章演示文稿395.1最简单例子5.2逐步显示4153主题模板4254中文演示43目录第六章高级应用446.1输入各种撇号引号6.2文件拆分及独立编译446.3合并多个PDF文件6.4错误处理466.4.1编译时的错误信息476.4.2编译时的警告信息47第七章背景资料7.1TeX系统的前世今生497.2TeX系统的目录结构507.3TeX系统的文件查找51第八章字体详解8.1字体类型与文档格式548.2新字体选择方案NFSS5583中文排版历程568.3.1CCT中文排版8.3.2CJK中文排版578.3.3 XeTeX中文排版第九章相关软件609.1纯文本编辑器609.1.1 TeXmaker编辑器6091.2 Te Xworks编辑器619.1.3正向搜索与反向搜索629.2可视化编辑器639.2.1IyX文档处理软件639.22 TeXmacs文档排版软件659.3新版 Office的公式排版6694在网页中显示数学公式67附录ATeX排版原理69A.1读取文件A.2生成盒子70A.3分段为行71A.4组行为页6日录附录 B PostScript语言75B.1PS语言的基本知识B.2PS语言的点阵图像B.3PS语言的点阵字体附录C常用宏包介绍81第一章基本使用1.1基本排版流程和 Microsoft office Word等所见即所得的办公软件不同,用Ix排版文档,首先要用文本编辑器编辑好tex文档,然后通过各种程序编译,得到pdf文档用于打印或者阅读。基本的排版流程如下图:xelatextexpalatelatexs pdfdvipsd.ps般我们经常用 datex或者 xelatex程序直接从tex文件生成pdf文件如果是中文tex文档,优先使用ⅹ elate程序编译。如何使用编辑器以及编译文档在后面的章节有详细介绍。12文本排版121英文文档最简单的TX英文文档如下:第一章基本使用l hello. texdocumentclass La4paper]articlesusepackagethyperref]egintdocumentyHello worldend]我们来看看上面的tex文档内容。在Ix里面,每行的%符号后面的内容都表示注释,在编译时都会被忽略。因此第一行的内容没有任何结果接着看第二行。在ⅣX文档中,用开始的字母串来表示一个命令,这里的 documentclass是1X文档的基本命令,用于指明文档类。命令后面用花括号包含的内容是该命令的参数,必不可少。对于这个例子, article参数就指明我们撰写的是一篇文章,类似地还可以用book或者 report参数,分别表示书籍和报告。命令后用方括号[]包含的内容是该命令的选项,选项可以省略,省略时必需连冋方括号也去掉。如果选项省略,将会使用默认值。这里例了的a4 paper指明我们文档的页面是A4纸张的大小,改为b5 paper就是B5纸张的大小。第三行的 usepackage命令也是IX的基本命令,用于载入I①X宏包I系统中包含了各种各样的宏包,对IX的基本功能作了各种扩展。我们这一行载入的 hyperref宏包后面将介绍到。接下来在 begin{ document}和 endidocument}之间的部分我们称为正文区,一般用于正文内容的撰写。这个例子的正文内容只有简单的 Hello wor1d!对应的,在 documentclass和 beginidocument}命令之间的部分我们称为导言区,一般用于载入宏包,定义命令和调整格式。X文档把格式和内容部分分开,是一种良好的设计准则。1.2.2输入特殊字符在ⅣX的文本内容中,大部分字符都可以直接输入,但是#,$,%,&,{,}这几个字符由于有特殊用途不能直接输入。我们可以按照下表的方式输入这些特殊字符输入#${}、-O显示#8%k输入 Textless extgreater extbartextbackslash显示1.3列表环境另外, Latex中是区分左右引号的,输入`和‘分别显示左右单引号,输入`和“分别显示左右双引号。连字号、起止号和破折号看起来都是一个差不多的短横线,但输入的方式也是不同的。用-得到连接单词的连字号-,用--得到表示数字范围的起止号,用---得到英文的破折号。123段落换行用一个空行或者par命令可以开始新的段落,同时会有默认的首行缩进。用或者 newline可以强制换行在下一行继续,且在下一行不会有缩进。12.4中文文档Latex中文文档的排版有各种方式,例如CCT,CJK,ⅹeCJK等等。目前最优秀的方式是用ctex文档类来排版中文文档,它在其它各种方式的基础上以一致的方式解决了中文排版的问题。例如:documentclass [UTF8] Ictexart]eginidocument)中文内容测试!endfdocumentH使用这种方式,只需要将文档类从英文的 article改成 ctexart,所有中文环境和章芇编号等等都已绎按照中文习惯设置好了,简单易行。例子屮的UIF8这个可选参数指明了中文文档的编码。编码主要有这两种:GBK和UTF8,而不同的 Latex编辑器对中文文档的默认编码不同。以CTeX套装29版本包含的两个编辑器为例, Winedt编辑器的默认中文编码为GBK,而ReWorks编辑器的默认中文编码为UTF8。因此,对于初学者,为了避免乱码的出现,最好根据编辑器的默认情形来选择编码,如果使用的是 Winedt编辑器,将文档的编码设为GBK,如果使用的是reκ works编辑器,将文档的编码设为UTF8。如果编码不指定,默认为GBK另外,对于bok和 report文档类,也有对应的 ctexbook和 ctexrep中文文档类,其用法类似。1.3列表环境Latex的命令实际上也有不同的类型,形如begin环境名}.lend环境名}第一章基本使用的命令组合我们称为环境。环境一般用于对某种类型的段落用特殊的形式来显示。在文本段落中,常见的环境有列表环境。列表环境有三种:无序列表( itemize)、有序列表( enumerate)和描述列表( description)。它们的使用方式和显示效果如eginfitemize]item无编号的列表无编号的列表item带编号的列表·带编号的列表item带标签的列表带标签的列表end[]Abegintenumeratehitem无编号的列表1.无编号的列表item带编号的列表2.带编号的列表iem带标签的列表3.带标签的列表endtenumeratelegintdescriptionhitem[无序列表]无编号的列表。无序列表无编号的列表。item[有序列表]带编号的列表。有序列表带编号的列表item[描述列表]带标签的列表。描述列表带标签的列表。endidescriptionh14文档结构4.1文档类别前面已经讲过,用下面的命令可以指定文档类documentclass[选项]{文档类其中文档类有文章( article),书籍(book),报告( report),书信( letter)这几种选择。文档类的选项有下面这些。页面大小(a4 paper,a5 paper,b4 paper, letterpaper, legalpaper, executiveper):默认的 letterpaper常见于美国,其大小为216毫米乘以279毫米(即8.5英寸乘以11英寸),而国内常用的a4 paper的大小为210毫米乘以297毫米,两者稍有区别。虽然这里可以指定不同的页面大小,但是纸张却始终为A4大小。比如你指定为A5页面大小,那么生成的PDF文件中,内容只在A4纸张的左上角。
    2020-11-27下载
    积分:1
  • 大型光伏并网系统的建模与仿真
    大型光伏并网系统的建模与仿真大型光伏并网系统的建模与仿真
    2020-11-06下载
    积分:1
  • CATIA V5基础教.pdf
    清华大学版本,学习catia基础教程清华大学版本,学习catia基础教程
    2020-12-07下载
    积分:1
  • python神经网络书中的代码修改得到的光伏预测
    python书中的代码,可以很快的习得BP神经网络,并且其中提供了修改后的预测程序
    2021-05-06下载
    积分:1
  • LFMCW_multi
    LFMCW线性调频连续波雷达测距测速代码,用在多目标情况,能正确反演出目标距离和速度
    2020-11-27下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载