首页 > 范文大全 > 正文

VC++语言编程实现纵断面测量数据的里程平差

开篇:润墨网以专业的文秘视角,为您筛选了一篇VC++语言编程实现纵断面测量数据的里程平差范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:文章利用vc++编程语言实现了纵断面测量数据里程误差的自动平差处理,该程序可以对纵断面测量数据进行检查、分析和平差。在里程误差不超限时,利用平差程序实现纵断面测量数据的里程平差。结果表明,自动平差精度可靠,节省了人工平差的繁琐和费时,极大地提高了效率。

关键词:简易平差;纵断面测量;里程平差

科技的飞速发展,使纵断面测量技术得到了很大的进步,由传统的钢尺量距定桩,水准仪测高程手工绘制纵断面图,绘图费时费工,成果不美观、质量差;现代纵断面测量已经发展为全站仪、gps边放样拐点和中线边测各点的坐标,并根据坐标直接在autocad环境下开发的纵断面绘图程序中绘制纵断面图,极大地提高了绘图效率,成图便捷、美观。但某些软件成图时,由于没有自动平差功能,必须对里程数据手工平差,费时费力。因此,编制纵断面测量数据里程误差的自动平差程序必将大大提高工作效率。

1 gps纵断面测量方法

1.1 纵断面的施测

选择适合做基准站的gps点架设基准站。利用rtk的线放样测量功能进行数据采集。rtk的线放样测量功能是野外数据采集软件的一部分,首先将图上量取的0+000至终点各折点坐标输入到psion手簿中,能够指引测量者沿直线前进,而且还可以实时地了解到前后左右的偏差值,这一功能恰好满足纵断面测量直线方向和点位密度的要求。按任务书要求施测,每隔一定距离施测一个断面点。按采集数据流水号记录相应的植被、地物情况及累加距等。加密图根点时观测每点接收两次,以便消除粗差坐标成果的出现。

1.2 纵断面的内业处理

通过rtk配套软件提取出来的数据按我们要求的纵断面成果相距甚远,所以必须经过数据处理才能满足要求。在实际工作中rtk数据输出格式为“坐标x,坐标y,高程h”按所有纵断点坐标展绘到cad图形文件上,求出所有点的间距,从而得到纵断点的累加距。这样就可以编制纵断面成果表。再通过相应制图软件就可以绘制纵断面图,供设计人员使用。

2 平差方法

文章选用的平差方法是基于最小二乘原理的间接平差方法的特例——简易平差方法。

具体算法如下:

(1)根据全站仪或gps采集的外业三维坐标数据(x、y、h),利用距离公式求得距离l。

3 编程实现纵断面测量数据里程平差

3.1 程序编译环境和界面设计

以vc++6.0为开发环境,基于autocad,运用vc++语言编制里程误差的自动平差功能。

程序的界面向用户提供一种图形与正文共存的可视化环境,使操作更为简单、快捷。界面的设计不仅要考虑其外形、布置的美观,更应该注重程序的功能[3][4][5]。该程序的编制主要用于纵断面里程数据的平差。因此,程序的界面设计主要是根据纵断面图绘制过程中的里程的计算进行综合布置,在点击按钮时能弹出相应的对话框[6]。

3.2 程序流程图和功能实现

程序的流程见图1。

程序可以实现的功能如下:①读取全站、gps获得的坐标数据;②判断出拐点的实测坐标与理论坐标误差是否在限差范围内;③计算出线路中线上各点与拐点之间距离和线路总里程;④实测总里程与设计总里程进行比较,将里程误差按各点到拐点里程距离进行分配;④输出里程改正后的数据文件。

3.3 实例验证

应用该程序进行纵断面测量数据里程平差所得数据与人工里程平差数据一致。

4 小结

程序采用了面向对象的可视化程序设计的思想方法,对纵断面测量数据里程平差成图进行了分析抽象,设计并编制了纵断面测量数据的里程平差程序,实现了纵断面测量数据的里程的自动平差,从而节省了人工参与计算的时间,也更经济、合理。

参考文献:

[1]张正禄.工程测量学.武汉大学出版社,2004年1月

[2]赵长胜、石金峰.测量平差.教育科学出版社,2000年5月

[3]钱能.c++程序设计教程.清华大学出版社,2001年3月

[4]朱东海、刘良华等.visual c++6使用详解.机械工业出版社,1999年7月

[5]马明栋、赵长胜等.面向对象的测量程序设计.教育科学出版社,2000年5月

[6]李强.道路纵断面绘图程序的开发.安徽建筑,2004年6月