- 相關推薦
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月
【VC++語言編程實現縱斷面測量數據的里程平差】相關文章:
用VC++實現高級數據加密標準AES03-07
基于USB接口的數據采集系統-GSM功率測量VC++03-08
VC++編程在步進電機控制中的應用03-07
多種數制顯示的匯編語言編程實現03-19
網絡智能游戲的設計與實現VC++11-23
JDBC數據庫編程的研究03-15
VC++實現串口通信的應用程序設計03-07
實現基于網頁的數據庫數據導入03-18