第四章数字化测图软件开发_第1页
第四章数字化测图软件开发_第2页
第四章数字化测图软件开发_第3页
第四章数字化测图软件开发_第4页
第四章数字化测图软件开发_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

第三章数字化测图软件开发§3.1软件开发的基础知识§3.1.1软件开发与软件危机一、软件定义软件是指计算机实现各种功能的逻辑部件,是人类创造的最强大工具。二、软件开发的特点:1)进程难以控制2)质量评价难3)维护与修改难三、软件危机1)定义:软件开发与维护过程中遇到的一系列严重问题的统称。2)软件危机的表现

a、软件开发成本和进度开发不正确b、用户对产品的不满意现象经常出现c、产品质量可靠性差d、软件可维护性差e、软件缺乏适当的文档资料f、软件成本在计算机系统中所占的比例逐年增加g、软件开发生产率与计算机应用发展速度相差大3)软件危机解决方法

a、提高开发与管理人员的认识,树立“工程”概念b、注意推广成功的技术和方法,并探索更好的方法。c、注意选择支撑环境§3.1.2软件工程学的基本原则针对出现的软件危机及其原因,进行研究进而提出了一门新的学科---软件工程学,并提出软件工程的基本原则:1)用分阶段的生命周期法进行软件计划,严格进行管理。2)坚持阶段评审。3)实行严格产品质量控制,不能随意改变需求。4)采用现代化程序设计技术5)软件开发结果应能清楚审查6)开发小组人员应当小而精7)承认不断改进软件工程实践的必要性。§3.1.3生命周期法及各阶段的任务

一、基本原理从时间角度出发,把软件开发和维护的复杂问题进行分解,将软件生命的漫长周期依次划分为若干阶段的一种软件开发方法。每个阶段有相对独立的任务,开发工作逐步按阶段。二、划分原则:各阶段的任务彼此间尽可能相对独立,同一阶段各任务性质相同;从而降低各阶段开发难度。三、阶段划分及各阶段任务目前阶段划分的方法较多,一般比较认可的阶段划分为:软件定义、软件开发、软件维护三阶段。各阶段的任务分述如下:1)软件定义该阶段的主要任务是:

a、确定软件开发工程必须完成的总目标;

b、确定工程的可行性;

c、导出实现工程目标应采用的策略及系统必须完成的功能;

d、估计完成该项工程需要的资源和成本,并且制定工程进度表。这个时期的工作通常又称为系统分析,由一般由系统分析员负责完成。软件定义时期通常进一步划分成三个阶段,即

问题定义:确定系统的规模和目标

可行性研究:确定问题解决方案和成本效益分析

需求分析:确定系统的功能、性能和运行要求。2)软件开发该阶段是对上一阶段定义的软件目标进行具体设计和实现,通常分为:

总体设计:确定解决问题的策略、设计软件结构及各软件模块间的关系。

详细设计:把问题解决的方法具体化。

程序编码和单元测试:写出程序模块并进行调试

综合测试:将各模块进行集成测试。3)软件维护在软件投入运行后,根据用户需要而进行的修改,具体工作内容包括:

a、修改运行中发现的错误b、使软件适用于新环境c、增加用户新的功能要求§3.2数字化成图软件的特点、功能和结构数字化成图软件是数字化成图系统中一个极其重要的组成部分,软件的优劣直接影响数字化成图系统的效率、可靠性、成图精度和操作的难易程度。§3.2.1数字化成图软件的特点1)数据量大2)算法复杂3)涉及外设多4)图形交互5)图形与属性的关联和应用。§3.2.2数字化成图软件的功能1)外业数据记录2)数据传输3)图形输入4)数据处理5)图形生成6)图形编辑7)图形输出以上成图软件的功能,在不同的作业模式下不一定全部包含,各功能的有机结合,构成数字化测图软件的基本框架:§3.2.3数字化成图软件的结构数字化测图软件作为图形软件的一种,与其它图形软件一样,一般划分为四个层次,即:零级图形软件:又称为设备驱动程序,主要解决图形设备与主机通讯和接口问题。

一级图形软件:又称基本子程序。主要包括生成基本图形元素、对设备进行管理的各个程序模块。

二级图形软件:又称功能子程序,建立图形数据结构、定义编辑和输出图形。

三级图形软件:为解决具体应用的软件,在统一界面下协调各级软件的工作。上述四级软件中,零级一般由系统软件提供;一级软件由所选择的开发工具或语言提供;二级和三级才是数字化成图软件开发的主要工作。§3.3数字化成图软件的开发数字化测图软件的开发方法有很多,可以是完全开发,也可以是二次开发,下面以基于AUTOCAD的二次开发为例来子解数字化测图软件开发的内容和方法§3.3.1二次开发的主要内容在AUTOCAD二次开发中,其主要内容包括:命令用户化、线型和图案开发、菜单开发、数据格式转换、特殊功能开发。一、命令用户化1、为内部命令定义别名,通过修改ACAD.pgp文件;

格式:<命令别名>,*<命令名>

2、在CAD下调用外部命令,通过修改ACAD.pgp文件格式:

<命令名>,[<DOS请求>],<位标志>,[*]<提示>,3、重定义内部命令功能,通过编程实现,但需进行undefine和redefine操作,且只对当前编辑有效。(例1)二、菜单的二次开发

CAD菜单组成:下拉菜单、光标菜单、屏幕菜单、图符菜单、数字化仪菜单,所有菜单均在acad.mnu文件中,其格式为:(显示CAD界面进行介绍)三、功能开发1、LISP语言开发

2、VBA进行开发

3、ARX开发(defunc:zd(/fffcodexy)(setvar"cmdecho"0)(setqff(getstring"请输入文件名:"))(setqf(openff"r"))(princ(listfff))(setqcode(read-linef))(while(/=codenil)(setqx(read-linef))(setqx(atofx))(setqy(atof(read-linef)))(setqp(listyx))(command"circle"p"5")(command"text"p"2"""code) (setqcode(read-linef)))(closef)(princ))§3.4外业采集软件的开发外业采集软件是指在外业进行数据测量中记录观测数据、实体属性和测点连接关系(一般用编码表示)并对记录数据进行必要整理和计算的程序。该软件应具有的特点:1)规模不大,程序及内部数据结构要求紧凑。2)讲究数据输入效率3)较好的容错性和可靠性4)注意接口的兼容性§3.5数据通讯软件的开发数字化测图软件涉及外设较多,因此通讯模块是一个重要的程序模块,通讯软件通常采用RS-232C接口,设备之间以二进制数据方式交换。§3.6图形数据处理软件的开发

§3.6.1图形数据处理软件的功能

在成图(图形生成)以前对由电子手簿导入的数据进行必要的处理,生成满足图形生成要求的数据文件。为了保证图形生成的快速、可靠,应该对用于图形生成的数据文件提出如下要求:

1、它应该采用便于计算机处理的系统内部编码。

2、数据组织形式应该是面向实体的,而不是面向测点的。所以经过数据处理后生成的数据文件一般称为实体数据文件。

3、文件的组织应该以图幅为单位,即一个文件对应于一个图幅,包括接边所需要的部分。

4、存贮的数据应该是经过几何纠正和检测的。

根据以上几点要求,可以明确图形数据处理软件应该完成的工作包括:编码转换、图幅裁剪、数据合并、规则地物几何纠正等。软件开发时应该设置相应的模块。下面介绍各模块的详细功能与编程方法。一、编码转换:解决如何实现外业简编码向内业计算机绘图编码的转换及实体数据形成的问题,具体做法是:有码作业方式:

编码转换:通过建立内外业编码对照表文件,根据数据点的编码进行转换;

实体生成:读入测点信息,提取测点的连接码,并根据连接码判断是实体起点还是中间点,进行实体数据生成。如CASS外业文件:

1,X0,40050,30185,02,+,40161.367,30184.898,03,+,40171.509,30193.585,04,+,40171.509,30300.004,0………………29,Q0,40350.059,30107.679,030

温馨提示

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

评论

0/150

提交评论