摘要:本文针对导线测量平差的繁杂性及用户对处理软件的易用性要求,结合Visual Basic6.0语言的可视化编程的优势,依据导线测量平差的基本原理与方法,采用Visual Basic6.0语言编程方法,设计并实现导线测量平差系统软件。以一个具体导线实例验证系统的可行性和简便性,体现Visual Basic6.0编程在测量平差计算中的优越性。
关键词:Visual Basic6.0;附合导线;程序设计
随着经济社会发展和新的科技革命,测绘科学和技术得到了长足的发展,测绘的内涵和形式也发生巨大的变化。依据《城市测量规范》CJJ/T 8-2011,在城市测量平面控制测量中,导线测量有二、三、四等网和一、二、三级网和图根导线,一、二、三级导线网和图根导线的平差可采用近似平差法。导线平差计算涉及公式较多,计算量大,仅仅依靠人工计算过程繁杂,简单易用的计算机软件平差符合当前的用户需求。Visual Basic6.0(简称VB)是Microsoft开发的一种面向对象的编程语言,该语言是结构化的程序设计语言,具有丰富的数据类型和众多的内部函数,其采用模块化和结构化程序设计语言,结构清晰,语法简单,容易学习。开发人员在界面设计时,可以直接用Visual Basic6.0的工具箱在屏幕上“画”出窗口、菜单、命令按键等不同类型的对象,并为每个对象设置属性。开发人员要做的仅仅是对要完成的事件过程的对象进行编写代码,因而程序设计的效率可大大提高。利用Visual Basic6.0语言编制导线计算程序将会提高工作效益,减少工作强度,提高测绘产品的质量。
一、原理介绍
本文主要介绍在城市测量平面控制测量中一、二、三级导线和图根导线的计算。依据规范要求,一、二、三级导线网和图根导线的平差可采用近似平差法,按照近似平差方法,导线方位角闭合差平均分配给各个观测角,坐标闭合差依据导线的边长按比例分配。导线的主要技术指标见表1。
表1 导线的主要技术指标
等级 | 附合导线长度(km) | 平均边长(m) | 测距中误差(mm) | 测角中误差() | 导线全长相对闭合差 |
一级 | ≤3.6 | 300 | ≤15 | ≤5 | ≤14000 |
二级 | ≤2.4 | 200 | ≤15 | ≤8 | ≤10000 |
三级 | ≤1.5 | 120 | ≤15 | ≤12 | ≤6000 |
图根(1:1000) | ≤1.8 | 150 | ≤20 | ≤4000 |
二、程序编制
1.程序设计思路和框图
我们先打开城市控制点数据文件KZD.TXT,再打开测站点观测数据文件CZD.TXT获取导线的测站数、已知点点名和测站信息:点名、水平角、平距、高差。依据已知点点名从控制点数据文件KZD.TXT获取导线起始点和终点的X坐标、Y坐标,依据导线起始点和终点的X坐标、Y坐标计算出导线起始方位角和闭合方位角。计算出导线的方位角闭合差,如果方位角闭合差超限,显示方位角闭合差超限并结束计算;如果方位角闭合差未超限,将导线方位角闭合差平均分配给各个观测角。计算出导线的坐标闭合差,如果导线的坐标闭合差超限,显示坐标闭合差超限并结束计算;如果坐标闭合差未超限,将导线坐标闭合差依据导线的边长按比例分配各个坐标增量并计算出各导线点的坐标。把各个导线点的点名,x坐标,y坐标,h高程信息读取到导线点成果数据文件MM1.DAT中,依据导线起始点、终点和各观测点的X坐标、Y坐标计算出导线各个边的方位角,按导线计算表格输出导线计算成果。程序设计框图见(图1)。
图1程序设计框图
2.程序设计及使用
本程序使用Visual Basic6.0语言编写,系统平台为win7或winXP,程序编制好后编译为可执行文件:导线计算.EXE。程序运行前,编制城市控制点数据kzd.txt文件和导线观测数据czd.txt文件放在D:\目录下。运行导线计算.EXE文件即可完成导线计算,计算成果会按导线输出格式输出到屏幕上,各个导线点的成果:点名,x坐标,y坐标,h高程信息读取到导线点成果数据文件MM1.DAT中。
三、实例验证
1.实例计算
本文以一导线为例说明导线计算程序的运用,导线如图2所示,LAO6和2015两点为已知点,1、2、3、4、5点表示导线未知点,控制点数据见表2,其余观测数据见表3,导线计算成果输出表格见图3,导线计算成果数据见表4。此例采用手工计算方法算出各导线点的X坐标、Y坐标,方位角闭合差、坐标闭合差,手工计算结果和导线计算程序计算的结果相同,印证了本文导线计算程序的可行性。利用Visual Basic6.0语言编写的导线计算程序使用方便,计算准确,解决了人工计算所带来的麻烦。
图2 导线略图
图3 导线计算输出结果
2.实例数据
(1)城市控制点文本数据。城市控制点文本数据格式要求为:点名,x坐标,y坐标,h高程。实例数据如图4。
图4实例数据
(2)导线观测数据。导线观测数据格式要求为:第一行:测站数、已知点点名。测站信息:点名,水平角,平距,高差。实例数据如图5。
图5 实例数据
(3)导线计算成果数据
导线计算成果文本数据格式为:点名,x坐标,y坐标,h高程。实例数据如图6。
图6 实例数据
四、结语
文中以导线计算为例,说明Visual Basic6.0语言编写测量导线平差程序的方法,体现了Visual Basic6.0具有强大数据计算和良好的用户界面开发功能,文中利用Visual Basic6.0语言编写了测量导线计算程序,该导线计算程序输出格式美观,计算成果可靠,它提高工作效益,避免手工计算的繁琐和出现错误,减少技术人员的工作强度,提高产品质量和提高劳动效益,并用实例证明了方法的可行性,在生产中得到很好的应用。
参考文献:
[1]CJJ/T 8-2011,城市测量规范[S].
[2]孟令涛.城市导线测量一体化程序设计[J].现代测绘,32(4):34-40.
[3]林敬娜,程刚,路晓明,等.一种Matlab与C#混合编程实现测量平差程序的方法[J].测绘工程,2022(1):45-51.
【作者简介】孟令涛(1972-),男,蚌埠市勘测设计研究院高级工程师、注册测绘师,主要研究方向:城市测绘质量与技术。