导线测量实用软件的设计开发

时间:2022-04-19 02:15:21

导线测量实用软件的设计开发

摘要: 随着现代科学技术的发展,工程测量无论是在测量方法、测量仪器还是数据处理方面都得到了质的飞跃。众所周知,测量数据的处理是一件既繁杂又精细的工作,一旦这个环节出了问题,前面的测量工作就会失去价值。这就要求我们能够利用现有的计算机技术以及各种开发工具快捷、精确的得出处理结果。进入21世纪,计算机的发展无论是在软件上还是在硬件上,都能够满足各种系统开发的需求,因此不断涌现出各种开发工具,Microsoft Visual Studio 2008 便是其中之一。Visual Studio 2008可以对多种语言进行开发,而且还可以进行自动构建,并且得出构建结果。其中,基于Visual 语言的智能设备的集成开发效率有了很大幅度的提高,使程序开发变得更加简洁,更加智能。运用Visual Basic语言,通过Visual Studio 2008 开发环境,研究开发了基于智能设备的导线测量的计算程序,可以对测量的数据进行处理、传输、存储、查询等功能。

Abstract: With the development of modern science and technology, engineering surveying has got a qualitative leap in measuring method, measuring instrument and data processing. As is known to all, measuring data processing is a complex and delicate work and a single mistake will make the former measuring work lose value. So it is essential to use the existing computer technology and various development tools to work out the processing result fast and accurately. Since the turn of the century, computer development, whether in software or hardware, has been able to meet the needs of various system development. Consequently, a variety of development tools emerge, and Microsoft Visual Studio 2008 is one of them. Visual Studio 2008 supports the development of multi-lingual, and is able to automatically build, and give the results of the build. Smart devices based on Visual Basic. NET language integrated development efficiency has been greatly improved, so that application developers can be more concise and intelligent. Using Visual Basic language and through the Visual Studio 2008 development environment, the traverse survey calculation program is researched and developed based on intelligent devices. This package has data processing, transmission, storage, query and other functions.

关键词: ;VS2008;工程测量;智能设备;导线测量

Key words: ;VS2008;engineering survey;intelligent devices;traverse survey

中图分类号:TP311 文献标识码:A 文章编号:1006-4311(2013)25-0181-04

0 引言

在测绘与工程测量中,所涉及的数据计算、绘图、数据库管理、数据分析等,往往都可以使用计算机来完成。随着现代测绘技术的发展,使得对于工程测量数据处理的软件有更高的要求。

这使得传统的基于DOS平台、面向过程的结构程序设计语言已不能满足开发测量应用软件的需要。随着编译技术的不断发展,各种各样的开发工具应运而生,微软公司推出的Visual Studio 2008便是其中之一。

Visual Studio 2008支持.NET framework 3.5,并且同时支持以前.NET framework版本。设计Visual Studio 2008的目标主要有三个:使开发效率大大提高;使团队在开放过程中更好的合作;可以对于一些微软的最新技术进行开发和应用。同时,在VB中加入了对LINQ的支持,LINQ使数据库语言和开发语言能很好的结合起来,使用户运用VB语言编写出类似于SQL语句的指令。这样VB不仅能够获取数据,而且还能够对数据进行复杂的运算。使得VB集成开发环境的开发效率有了很大幅度的提高,让编程过程变得更加智能,更加简洁。

在实际的测量工作中,在野外测量的数据往往需要进行各种计算后才能应用。运用程序设计进行计算的特点是:计算速度快、精度高、数据处理自动化,从而把工作人员从繁重的计算工作中解放出来。

在工程测量中,提供了先进的技术工具和开发手段,为工程测量向现代化、自动化、数字化方向发展创造了有利的条件。这些先进的设备以及软件,将野外采集的数据与微机结合起来,形成一个数据采集、数据处理、输入、输出的自动化系统。

1 设计内容及方法

1.1 研究的内容及目标

①导线测量的计算;②支导线的计算;③仅有一个连接角的附合导线的计算。

1.2 设计程序的目标

①程序逻辑结构简单,清晰易读;②运算速度快,占用内存小;③数学模型及计算方法正确,计算结果精度高;④适应性强,便于移植,尽量满足不同要求与需要;⑤用户界面简洁美观,方便操作;尽量减少手工处理工作量,人机交互性强。⑥数据输入方式简单统一,输出简洁明了,数据的查询快捷简便,有详尽的帮助功能,方便用户。

1.3 技术路线

2 导线测量说明

2.1 导线测量:导线测量是指在地面上按一定要求选定一系列点,依相邻次序连成折线,并测量各线段的边长和转折角,再根据起始数据确定各点平面位置的测量方法[6]。

2.2 导线的布设形式

①支导线:支导线是从一个控制点开始,既不闭合于起始的控制点,也不附合于其他控制点,如图2所示。

②附合导线:导线是从一个已知控制点开始,闭合于另一个的已知控制点,如图3所示。

③闭合导线:导线是从一个已知控制点开始,闭合于同一个控制点,形成一个闭合多边形,如图4所示。

2.3 导线测量的计算及软件开发

2.3.1 支导线的计算

如图5所示,已知直线AB的坐标方位角αAB[7],由式(1)计算出各边的坐标方位角αi;其中当βk为左角时,取“+”;当βk为右角时,取“-”。

αi=αAB±βk±180°(1)

再由各边的坐标方位角αi和以及各边的边长Si,由式(2)计算出各导线点的坐标增量Δxi、Δyi;

Δxi=Si·cosαiΔyi=Si·sinαi(2)

再由式(3)计算出各导线点的坐标.Pi(xi,yi)。

x■=x■+Δx■y■=y■+Δy■(3)

支导线的计算

α(Me.TextBox0.Text)=Me.TextBox1.Text+Me.TextBox2.Text/60+Me.TextBox3.Text/3600

αhd(Me.TextBox0.Text)=α(Me.TextBox0.Text) * PI/180

β(Me.TextBox0.Text+1)=Me.TextBox4.Text+ Me.TextBox5.Text/60+Me.TextBox6.Text/3600

βhd(Me.TextBox0.Text+1)=β(Me.TextBox0.

Text+1)*PI/180

If ComboBox1.Text="左角"Then

α(Me.TextBox0.Text+1)=α(Me.TextBox0.Text)+β(Me.TextBox0.Text+1)-180

ElseIf ComboBox1.Text="右角"Then

α(Me.TextBox0.Text+1)=α(Me.TextBox0.

Text)-β(Me.TextBox0.Text+1)+180

End If

αhd(Me.TextBox0.Text+1)=α(Me.TextBox0.Tex

t+1)*PI/180

S(Me.TextBox0.Text+1)=Me.TextBox7.Text

X(Me.TextBox0.Text+1)=Me.TextBox8.Text

Y(Me.TextBox0.Text+1)=Me.TextBox9.Text

X(Me.TextBox0.Text+2)=X(Me.TextBox0.Text+1)+S(Me.TextBox0.Text+1)*Cos(αhd(Me.TextBox0.Text+1))

Y(Me.TextBox0.Text+2)=Y(Me.TextBox0.Text+1)+S(Me.TextBox0.Text+1)*Sin(αhd(Me.TextBox0.Text+1))

Me.TextBox1.Text=Fix(α(Me.TextBox0.Text+1))

Me.TextBox2.Text=Format(Fix((α(Me.TextBox0.Text+1)-Fix(α(Me.TextBox0.Text+1)))*60),"00")

Me.TextBox3.Text=Format((α(Me.TextBox0.Text +1)*60-(Fix(α(Me.TextBox0.Text+1))*60)-Fix((α(Me.TextBox0.Text+1)-Fix(α(Me.TextBox0.Text+1)))*60))*60,"00")

Me.TextBox4.Text=""

Me.TextBox5.Text=""

Me.TextBox6.Text=""

Me.TextBox7.Text=""

Me.TextBox8.Text=Format(X(Me.TextBox0.Text+2), "0.00")

Me.TextBox9.Text=Format(Y(Me.TextBox0.Text+2),"0.00")

Me.TextBox0.Text=Me.TextBox0.Text+1

2.3.2 仅有一个连接角的附合导线的计算

如图6所示,A、B为已知点,βi为转折角,Si为导线边长,求出各个未知点的坐标xi,yi[8]。

此过程与支导线计算相同,不同的是由于B点是观测点,观测值xB,yB与计算值xB′,yB′的结果必然不同,将产生坐标闭合差fx、fy,见公式(4)。

f■=x■■′-x■f■=y■′-y■(4)

再按照各导线的边长成比例的改正其坐标增量,其改正数为:

v■=■·S■v■=■·S■(5)

改正后的坐标增量为:

Δx■=Δx■■+v■Δy■=Δy■■+v■(6)

再计算出各导线点的坐标.Pi(xi,yi),此时B点的坐标为已知值。[9]

仅有一个连接角的附合导线的计算

evaluate1()

Ssum(0) = 0

Ssum(Me.TextBox0.Text+1)=hh(Me.TextBox0.Text)+ Ssum(Me.TextBox0.Text)

α(Me.TextBox0.Text)=Me.TextBox1.Text+Me.TextBox2.Text/60+Me.TextBox3.Text/3600

αhd(Me.TextBox0.Text)=α(Me.TextBox0.Text)*PI/180

β(Me.TextBox0.Text+1)=Me.TextBox4.Text+Me.

TextBox5.Text/60+Me.TextBox6.Text/3600

βhd(Me.TextBox0.Text+1)=β(Me.TextBox0.Text+1)*PI/ 180

If ComboBox1.Text = "左角" Then

α(Me.TextBox0.Text+1)=α(Me.TextBox0.Text)+

β(Me.TextBox0.Text + 1) - 180

ElseIf ComboBox1.Text = "右角" Then

α(Me.TextBox0.Text+1)=α(Me.TextBox0.Text)-

β(Me.TextBox0.Text + 1) + 180

End If

αhd(Me.TextBox0.Text+1)=α(Me.TextBox0.Text+1)*PI/ 180

S(Me.TextBox0.Text+1) =Me.TextBox7.Text

X(Me.TextBox0.Text+1) =Me.TextBox8.Text

Y(Me.TextBox0.Text+1) =Me.TextBox9.Text

X(Me.TextBox0.Text+2) =X(Me.TextBox0.Text+1)+S(Me.TextBox0.Text+1)*Cos(αhd(Me.TextBox0.Text+1))

Y(Me.TextBox0.Text+2)=Y(Me.TextBox0.Text+1)+S(Me.TextBox0.Text+1) * Sin(αhd(Me.TextBox0.Text+1))

Me.TextBox1.Text=Fix(α(Me.TextBox0.Text+1))

Me.TextBox2.Text=Format(Fix((α(Me.TextBox0.Text+1) -Fix(α(Me.TextBox0.Text + 1)))*60), "00")

Me.TextBox3.Text = Format((α(Me.TextBox0.Text+1) * 60-(Fix(α(Me.TextBox0.Text+1))*60)-Fix((α(Me.TextBox0.Text +1)- Fix(α(Me.TextBox0.Text+1)))* 60)) * 60,"00")

Me.TextBox4.Text=""

Me.TextBox5.Text=""

Me.TextBox6.Text=""

Me.TextBox7.Text=""

Me.TextBox8.Text=Format(X(Me.TextBox0.Text+2),

"0.00")

Me.TextBox9.Text=Format(Y(Me.TextBox0.Text+2),

"0.00")

Me.TextBox0.Text = Me.TextBox0.Text+1

3 导线测量计算大软件界面设计

“导线测量”的子菜单如图7所示。

3.1 支导线的计算

单击如图7子菜单上“支导线的计算”按钮,打开如

图8。

单击“下一点”按钮,自动计算出支导线上下一点的坐标,如图9。

输入观测值,单击“下一点”按钮,自动计算出下一点的坐标;

点击“上一点”按钮,打开图8可查看上一点的已知值和坐标。

3.2 仅有一个连接角的附合导线的计算

单击如图7子菜单上“仅有一个连接角的附合导线的计算”按钮,打开如图10。

单击“下一点”按钮,自动计算出下一点的坐标,直到全部点都计算完,单击“改正”按钮,弹出图11。

单击“下一点”按钮,进行改正,弹出图12。

单击“下一点”按钮,改正下一点的坐标,直到全部点都计算完。

4 结束语

此程序简单易学,方便实用。可以让测量工作者对测量的平差过程及原理有更深入的了解,促进了对测量平差知识的认识和理解,极大的方便了测量施工。

参考文献:

[1]潘正风等.数字测土原理与方法[M].武汉:武汉大学出版社(第二版),2004.

[2]沈伟,郭伟伟.Visual Basic编程从基础到实践(第二版)[M].北京:电子工业出版社,2008,10.

[3]刘彬彬,安剑,于平.Visual Basic项目开发实例自学手册[M].北京:人民邮电出版社,2008,9.

[4]曹衍龙.Visual Basic 系统开发实力精粹[M].北京:人民邮电出版社,2008.

[5]王立丰.Visual 项目开发使用案例[M].北京:科学出版社,2006.

[6]李强等.Visual 精彩编程百例[M].北京:中国水利水电出版社,2004,4.

[7]郭瑞军,王松.Visual 数据库开发实例精粹[M]. 北京:电子工业出版社,2006,5.

[8]刘化果.Visual 开发实例完全剖析[M].北京:中国电力出版社,2005,10.

[9]沈大林.Visual 实例教程[M].北京:电子工业出版社,2006,5.

[10]张正禄,邓勇,罗长林等.论精密工程测量及其应用[J].测绘通报,2006(5):17-20.

[11]张正禄.工程测量学的研究发展方向[J].现代测绘,2003(6):3-6.

[12]Heribert,Kahmen.Vermessungskunde. Walter de Gruyter [M].Berlin New York 1997.

[13]Guenter Seeber.Satelite Geodesy. Walter de Gruyter[M].Berlin New York 2003.

[14]Chen Y. Report of the chairman of Commission 6.FIG XXI Internationai Con gress 7[P]. Brightion UK, FIG Commission 6.Engineering Surveys.1998.

上一篇:城镇地籍调查有关技术问题探讨 下一篇:基于多克隆和C—均值算法的入侵检测系统