用计算机高级编程语言java实现测量导线计算.doc_第1页
用计算机高级编程语言java实现测量导线计算.doc_第2页
用计算机高级编程语言java实现测量导线计算.doc_第3页
全文预览已结束

下载本文档

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

文档简介

用计算机高级编程语言java实现测量导线计算陈光武 路鑫金川集团矿山工程分公司【摘要】导线测量作为平面控制测量的重要组成部分,原理是一系列测点依相邻次序连成折线形式,并测定各折线边的边长和转折角,再根据起始数据推算各测点平面位置的技术与方法。不论是在地表还是井下测量都有广泛的应用,本文将讨论用计算机高级编程语言java实现导线计算,并包装成可以在有java环境的任何计算机上运行的可执行窗口程序。【关键词】编程语言 java 导线测量 测绘Discussion about Realization of Traverse Measure Calculator with Senior Computer Programming Language-JavaChen guangwu Lu xinJinchuan Group Mine Engineering Branch Corpration of Jinchuan Group.LtdAbstract:Traverse Measure is a vital portion of plane control survey which is tightly related to project quality. This page will discuss realization Traverse Measure with Senior Computer Programming Language-Java.Key words:Programming Language; Java; Traverse Measure; Surveying and Mapping0 前言随着时代的发展,工程测量技术也有了长足的进步。数字化全站仪和GPS把测绘带入了数字化时代。以前用经纬仪和钢尺测导线的方式已经被全站仪取代了,虽然全站仪可以直接进行坐标测量,但是坐标测量的精度不及用导线测量方式,因此测量人员一般采用后者。然而这样一来必须使用科学计算器进行极坐标计算,这个过程发生在书面上,要耗费一定的时间,并且会由于人为原因产生错误操作从而导致错误。为了探讨改变这种现状,便有了用计算机编程语言实现这一过程的必要性了。1 需求分析任何一个软件应用都是对某种现实过程的模拟,这种模拟表现出了过程的属性和行为。需求分析通过调查发现该过程的属性和行为。进行一次导线测量需要经历以下过程:(1) 取得已知两点的坐标,即后视点和测站坐标。(2) 通过计算得到从测站至后视点的方位角。(3) 在测站用仪器目镜瞄准后视点后,确定初始方位。(4) 把目镜方向从后视点转至待测点,从而产生一个旋转角度。(5) 通过仪器测出测站至待测点的距离,再结合上一步产生的旋转左角,利用坐标正算方式求出待测点坐标。(6) 将待测点作为新的测站,进行一次工序的循环。结合以上过程,就可以抽象出该过程的属性和方法,即点的坐标、其与相邻两点之间的距离和方位角。对于这个过程的行为可以抽象为几个属性之间的数学运算和相应的关系。2 软件设计本环节确定软件的总体架构,它把过程的实现分解成几个部分。首先一个受用户欢迎的软件必须要有简洁友好的界面,因此根据用户需求绘制出程序运行的草图,将控件分布于其中,这些控件将用来监听和执行一些事件。控件具体功能的实现在软件编码阶段实现。然后理清程序运行的逻辑和算法。下表中罗列了本程序需要用到的变量。变量名称变量类型备注x1double后视点的x坐标y1double后视点的y坐标x2double测站的x坐标y2double测站的y坐标x3double测点的x坐标y3double测点的y坐标a1double测站至后视点的方位角a2double测站至测点的方位角ddouble将测站至后视点的方位角的度数fdouble将测站至后视点的方位角分数mdouble将测站至后视点的方位角秒数dddouble改正后测站至后视点的方位角的度数ffdouble改正后测站至后视点的方位角的分数mmdouble改正后测站至后视点的方位角的秒数zddouble左转角的度数zfdouble左转角的分数zmdouble左转角的秒数sdouble测站至测点的距离表1各变量之间的运算过程如下:(1) 确定测站至后视的方位角a1,a1=arctan(y1-y2)/(x1-x2),得到a1后将其转换成度分秒的形式,度数d= Math.floor(a1),分数f= 60*(a1-d),秒数m= 60*(f-Math.floor(f)。然后讨论测站和测点的位置,确定正确的方位角。(注Math.floor()为java数学类库中的向上取整函数)(2) 根据用户输入的左转角和上一步中求出的方位角,得出测站至测点的方位角a2,a2=a1+ (zd+(zf*60+zm)/3600)。(3) 求得测站至测点方位a2后,结合从测站至测点的距离s即可求出从测站道测点的坐标增量dtx,dty,dtx=x2+ssina(a2),dty=y2+scos(a2)。3 软件编码软件编码是选取一种编程语言和编程工具,用代码来实现设计阶段勾画出来的计算环节。在这里我们选取java语言和Eclipse编程软件进行编码。之所以选择它们是因为:java是一种简单的,纯面向对象的,安全的,健壮的编程语言,它提供了丰富的类库,开发人员可以方便的调用它们,提高了开发效率;其次,开发人员可以用面向对象的编程思想编写和设计程序,使能够创建或使用可重用的组件,使程序易于编写和维护,最重要的是java编译器会检查出很多其他语言在运行时才能显示的错误,并且java内置的指针可以消除重写内存和数据崩溃的可能。而Eclipse是用纯java语言编写的编程工具,其语法检查功能非常出色,开发过程中就可以提示我们及时更改错误的代码。由于操作系统一般不带java运行环境,因此要进行java程序编译运行需要配置java环境,安装Sun公司的jdk1.6即可。4 图形用户界面设计本程序的图形界面设计选择Swing,Swing是Sun公司推出的第二代图形用户接口工具包,通过它可以开发功能强大,见面漂亮的应用程序,它拥有完善的控件和庞大的类库,良好的扩展能力。(1) 构造图形界面首先要选择一个容器,它用来放置各种组件,这里用JFrame作为顶层容器。(2) 向JFrame中添加实现程序功能的组件,并进行位置布局的设定和初始化。(3) 向有时间触发功能的组件添加事件监听和相应的事件响应,使程序能根据用户的操作做出响应。本程序用到的组件有JLabel、JButton、JButtonRadio、JTextField。JLabel可以显示一些提示,没有事件响应能力;JButton用于响应用户的点击,以触发相应的事件;JButtonRadio是单选按钮,具有事件响应能力;JTextField用于接收用户输入的数据,然后把数据交给相应的函数处理。5 软件测试与维护软件测试主要用来测试程序是否能满足用户需求,得到令人满意的运行效果。维护是为了找出程序中存在的Bug(小漏洞),使程序不至于在自身运行过程中和接收到用户非法操作时崩溃或者得到错误的运行结果。本程序中常见的崩溃现象是用户输入了非数字类型的字符,产生数据格式错误而导致程序崩溃。未解决这种现象,引入了java异常处理机制来捕获异常并且处理它们。6 结论经过大量来自金川

温馨提示

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

评论

0/150

提交评论