交會法測量計算的程序實現及精度評定_第1頁
交會法測量計算的程序實現及精度評定_第2頁
交會法測量計算的程序實現及精度評定_第3頁
交會法測量計算的程序實現及精度評定_第4頁
交會法測量計算的程序實現及精度評定_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、河海大學本科畢業設計論文(專升本) 交會法測量計算的程序實現及精度評定摘 要交會法是在測繪過程中快速定點的常用方法。按照不同的觀測量可分為角度交會、距離交會和邊角交會;按照交會方式又可分為后方交會、前方交會及側方交會;不同的交會方法計算過程是不同的。編制一套包括各種交會方法的完整程序,并對定點精度進行評定,對于加快測繪速度,提高工作便利是有益的。本文共分四章。第一章對交會法研究的目的、背景和意義進行了介紹;第二章論述了各常用交會法原理、計算過程及精度評定;第三章詳細討論了程序設計的總體設計、詳細設計、模塊設計的相關理論和過程;第四章以基于.NET的C#語言編寫交會法測量計算程序,對輸入數據的結

2、構進行設計,并對程序進行調試,最終實現常用交會法計算程序及精度評定。關鍵詞:測邊交會; 測角交會;精度評定;C#編程語言AbstractThe intersection method is a quick point in the surveying and mapping process commonly used method. Measurements can be divided according to different viewing angle of intersection from the intersection and corner intersection and c

3、an be divided into the resection; in accordance with the intersection points of intersection and side intersection; the intersection method is different. The compilation of a complete program, including various intersection method and fixed-point precision to be assessed, it is useful to speed up th

4、e mapping speed, improve convenience. The paper is divided into four chapters. The first chapter on the purpose, background and significance of the intersection method described; The second chapter discusses the common intersection of law principle, calculation of the process and accuracy assessment

5、; discussed in detail in Chapter III of the overall design of the program design, detailed design, module design theory and process; Chapter based on NET C # language to write the intersection method, measurement and calculation procedures, the input data structure design, and debug a program, and u

6、ltimately the calculation procedures and accuracy assessment of the common intersection method.Key words: Linear Intersection; Goniometer intersection; Accuracy Assessment; C # Programming Language目 錄 第1章 緒 論11.1 本論文的研究背景和意義11.2 本論文的研究內容1第2章 常用交會方法的原理、計算過程及精度評定22.1 測角兩點前方交會方法原理及精度評定22.1.1 計算原理22.1.2

7、 精度評定32.1.3 計算過程32.2 測角兩點側方交會方法原理及精度評定42.2.1 原理42.2.2 精度評定42.2.3 計算過程52.3 測角三點后方交會方法原理及精度評定52.3.1 原理52.3.2 精度評定62.3.3 計算過程62.4 測邊兩點交會方法原理及精度評定62.4.1 原理62.4.2 精度評定。72.4.3 計算過程7第3章 交會法測量計算程序的開發設計73.1 程序開發的目標與原則83.1.1 程序開發的目標83.1.2 具體的技術要求83.1.3 程序開發的原則93.1.4程序的開發過程93.2 程序的總體設計93.3 程序的詳細設計11第4章 交會法測量計算

8、的程序實現及精度評定124.1 本論文采用的編程語言概述124.2 總體設計134.2.1 劃分模塊及模塊功能134.2.2 模塊間調用關系144.2.3 交會程序界面及模塊間數據的傳遞144.3詳細設計154.3.1數據輸入格式設計154.3.2參數設置模塊設計174.3.3各子模塊設計17結論與展望19致 謝20參考文獻21附錄一 部分程序代碼22第1章 緒 論1.1 本論文的研究背景和意義交會法是在測繪過程中快速定點的常用方法,當測區內布設的圖根平面控制點的密度不能滿足地形測量要求時,可用解析交會方法來加密圖根點。按照不同的觀測量可分為角度交會、距離交會和邊角交會;按照交會方式又可分為后

9、方交會、前分交會及側方交會;不同的交會方法計算過程是不同的。編制一套包括各種交會方法的完整程序,并對待定點精度進行精度評定,對于加快測繪速度,提高工作便利是有益的。1.2 本論文的研究內容綜上所述,針對交會程序的建立問題,本文的主要研究內容包括以下幾個方面: (1)對各常用交會法,如測角交會、測邊交會等數學模型及其精度評定模型進行研究,提出了利用各常用交會法實現實際測量處理的方法和流程;(2)探討軟件開發領域對程序設計及軟件設計的相關對程序的結構組成進行詳細設計和結構設計;(3)對基于.NET的C#編程語言進行研究,并結合該語言編寫常用交會法計算及精度評定程序,對數據輸入進行格式設計;(4)結

10、合相關實例數據,對本文編寫的交會法計算及精度評定程序進行調試修改,最終完成該程序的編寫,實現了常用交會計算方法及精度評定的程序編寫。第2章 常用交會方法的原理、計算過程及精度評定 解析交會測量是根據已知點的坐標,用觀測角或距離,按交會方法計算出待定點的坐標,解析交會法有前方交會、側方交會、后方交會和距離交會等,本文主要研究最常用的交會方法,即測角交會方法和測邊交會方法,同時,本文重點探討測角交會中比較典型的兩點前方交會、兩點側方交會和三點后方交會的數學模型及其精度評定模型,對于測邊交會,則研究比較典型的兩點測邊交會數學模型及其精度評定模型。2.1 測角兩點前方交會方法原理及精度評定如果已知A、

11、B兩點的坐標,如圖2-1所示,為了計算未知點P的坐標,只要觀測A和B即可。這種測定未知點P的平面坐標的方法稱為前方交會。 圖2-12.1.1 計算原理 已知條件為A、B兩點坐標分別為(xA,yB)、(xB,yB),求p點的坐標,如圖2-2。圖2-2待求數據p點的坐標(Xp,Yp) 。為確定P點的位置,經緯儀分別安置A、B兩點,用測回法觀測A、B根據A、B兩點的坐標和A、B,P點坐標為 (2-1) 必須注意到上式(2-1)的公式推導中,是假設如圖2-2中ABP點號是依A、B、P按逆時針方向編號的,其中A、B是已知點,P為未知點,同時,在求已知點坐標時,可用2-1式進行變換從而計算B點坐標,并與B

12、點的已知坐標核對,但是這樣計算只能發現是否有計算錯誤,不能發現角度測錯或是已知點坐標用錯,更不能提高計算成果的精度,所以,為了避免外業觀測發生錯誤,并提高未知點P的精度,在一般規范中,都要求布設有三個起始點的前方交會,這樣就可以進行相應檢查。2.1.2 精度評定兩點前方交會計算點P的坐標計算過程如下:根據已知邊長S及觀測角,先求AP的長度b及坐標方位角,然后按坐標正算公式求P點的坐標,即: (2-2)上式中,不是直接觀測值,而是由下式計算的: (2-3)根據協方差傳播率,若設,則點位中誤差為: (2-4)2.1.3 計算過程(1)首先根據外業測量的數據和交會圖形,按照上文所述前方交會合理編排點

13、位順序;(2)將外業觀測角值帶入到上述計算公式(2-1)中,若是采用計算器或是EXCEL計算,則應注意角值的度、度分秒、弧度這些單位的互算問題;(3)對計算過程進行檢核或是采用第三點測量進行檢核;(4)按照精度評定公式(2-4)對交會點進行精度評定并檢核計算過程。2.2 測角兩點側方交會方法原理及精度評定2.2.1 原理若觀測A和P或B和P,同樣可以測定未知點P的平面坐標,這種方法稱為側方交會。 若以已知點A、B為基礎,用側方交會測定P點坐標是這樣進行的:分別在已知點A(或B)和未知點P上設站,測得(或)和P,在計算P點坐標前,先求出角:=180°(+P)這樣就和前方交會的情形一致了

14、,于是就可以用前方交會的計算公式進行計算。前方交會測點P點時,一般采用檢查角的方法進行檢查觀測成果的正確性,即在P點向另一個已知點C觀測一個角值,利用這個檢查角進行交會檢查。2.2.2 精度評定側方交會與前方交會不同之處在于觀測角不是和,而是和P,所以其計算過程如下: (2-5)上式中,不是直接觀測值,而是由下式計算的: (2-6)上式中=P,根據協方差傳播率,同樣若設,則點位中誤差為: (2-7)2.2.3 計算過程(1)首先根據外業測量的數據和交會圖形,按照上文所述側方交會合理編排點位順序;(2)將外業觀測角值經過初步整理計算后帶入到上述計算公式(2-1)中,同樣,若是采用計算器或是EXC

15、EL計算,則應注意角值的度、度分秒、弧度這些單位的互算問題;(3)對計算過程進行檢核或是采用第三點測量進行檢核;(4)按照精度評定公式(2-7)對交會點進行精度評定并檢核計算過程。2.3 測角三點后方交會方法原理及精度評定2.3.1 原理若在未知點P上瞄準A、B、C三個已知點,測得和,也可確定未知點P的平面坐標,這種方法稱為后方交會。由已知點坐標及觀測角和,計算可得: (2-8)其中, (2-9) (2-10) (2-11)兩個N值可互為檢核。2.3.2 精度評定若令C=C,S1=ac,S2=ab,S3=bc,則: (2-12)式中,, (2-13) (2-14) (2-15)(2-16) (

16、2-17)2.3.3 計算過程(1)首先根據外業測量的數據和交會圖形,按照后方交會合理編排點位順序;(2)根據公式(2-9)(2-10)(2-11)計算相應參數,然后按照(2-8)計算交會點坐標;(3)對計算過程進行檢核或是采用第四個點測量進行檢核;(4)按照公式(2-13)至(2-17)計算相應參數;(5)最后用精度評定公式(2-17)對交會點進行精度評定并檢核計算過程。2.4 測邊兩點交會方法原理及精度評定2.4.1 原理為了求算未知點P的平面坐標,除去測角交會法外,目前電磁波測距儀已在測量工作中普遍采用,所以可以測量邊長Sa、Sb,以計算出P點坐標,這種方法稱為測邊交會法。為了求出P點坐

17、標,測量兩條邊長就可以了,但是為了檢核,同時又為了提高P點坐標的精度,通常是采用三邊交會法,其中兩條邊長是求P點坐標,另外一條邊長作檢核,或者用四邊交會法,這時可以組成兩個各有兩條觀測邊的圖形,求得P點的兩組坐標,當這兩組相應坐標之差在一定范圍內,取其平均值作為P點的最后坐標。根據公式可推導出兩點測邊交會法公式: (2-18) (2-19)上式子中, (2-20)對于三邊交會來說,為了提高P點交會的點位精度,一般可取兩條近似正交的邊計算坐標,而取第三條測量邊長Sc作為檢核,這時可以由C、P點坐標反算出PC邊長。2.4.2 精度評定。按照協方差傳播率,可以計算得到兩點前方交會精度評定公式如下:

18、(2-21)2.4.3 計算過程在實際運用測邊兩點交會方法中,往往采用如下過程:(1)測量外業中根據交會圖形和相應測量規范選擇待測定的兩條邊進行觀測;(2)內業中對運用公式(2-18)、(2-19)計算交會點坐標;(3)如有條件可用第三邊進行檢核;(4)運用上文所述精度評定公式(2-21)對交會點坐標進行精度評定;(5)對上述計算過程進行檢核。第3章 交會法測量計算程序的開發設計在對交會法進行理論研究和建立交會法數據處理數學模型的基礎上,必須開發可對交會法測量數據進行自動處理的計算程序,以簡化交會法測量數據處理的過程,確保交會法測量數據處理的正確性。本章對一般測量數據自動處理程序的開發設計進行

19、研究,涉及的內容主要有程序的開發目標與原則、程序的總體結構設計、詳細結構設計、程序主要功能模塊的分散開發。3.1 程序開發的目標與原則一般測量數據處理程序,應該具備工程項目的建立與管理、外業觀測數據自動導入、進行相應計算和精度評定、平差計算結果的輸出和控制網圖形顯繪等功能,由此可見這樣的軟件其結構是比較復雜的,在開發設計和集成時,需要綜合考慮測量控制網平差理論、數據處理方法、計算機語言與編程技術以及工程實際等多方面的因素。首先應該明確該軟件應該實現的功能,繼而確定該軟件開發的總體目標和開發原則,最后將各開發模塊按照一定的結構集成為一套完整的處理軟件。3.1.1 程序開發的目標測量數據處理軟件是

20、一個以測量數據處理技術和計算機語言技術為基礎的,能夠實現測量數據處理和相應計算等功能的專用數據處理軟件。這樣的軟件應具有正確性、實用性、可靠性、界面友好、便于操作和易于擴充等先進特征,因此測量數據處理程序開發的總目標是:充分利用現代計算機先進的軟、硬件技術和強大的計算功能,對測量程序實現智能的數據輸入、數據預處理與平差計算功能,并利用Windows多窗體技術對項目文件進行可視化操作與管理。3.1.2 具體的技術要求根據程序開發的總體目標,并結合具體的工程實踐,對程序提出了如下的技術要求:1、功能完善要求程序能夠對需要的計算及精度評定參數進行設置,能準確地對外業觀測成果進行數據檢核和相應計算,并

21、以通用的格式對結果進行輸出。2、結果可靠程序中要采用成熟的理論、精密的算法對相應數據進行計算,同時要考慮到觀測數據中含有粗差的情況,結合實際的工程情況采用特殊的處理方法,能夠定位與剔除原始數據中所含有的粗差,提高平差結果的可靠性。3、容錯性強、性能穩定程序要充分考慮到用戶在使用過程中輸入錯誤數據的情況,要能夠對各種非法數據格式做出準確的判別,及時提醒用戶進行修改。另外,在計算過程中,要設置一定的保護程序,防止遇到錯誤后軟件突然退出或現有數據的丟失。4、過程的可視化要求系統采用可視化技術,設置合理的菜單和工具條,對軟件的各項功能能夠進行控制。要采用友好的界面和方便的操作,實現外業觀測數據的導入;

22、數據處理后,同樣要采用友好的界面和方便的操作,輸出必要的過程數據及成果文件,若有需要則對網圖進行顯繪和輸出。5、程序的可擴充性和兼容性在滿足實現功能要求的前提條件下,應充分考慮現代技術的快速發展,以便對程序進行升級,要預留出大量的功能接口以方便程序要能夠隨時加入必要的功能模塊和應用系統,并要求程序應支持在多種操作系統中能夠穩定的運行,同時還要考慮計算機操作系統進一步發展后,可以繼續擴充和完善本計算程序。3.1.3 程序開發的原則根據對交會法測量外業數據和內業數據處理的理解,交會法測量數據處理程序的開發原則應該為:1、結合交會法工作的特點和具體的工程實踐,進行數據處理及精度評定程序開發,保證程序

23、最終能夠安全、完整、高效、可靠地進行交會法的數據處理。2、軟件開發的重點,應該放在保障系統能夠準確、穩定、快速地處理交會外業觀測數據,能夠對交匯點進行精確的點位計算以及進行精度評定等工作。3、根據相應交會測量方法及相關的測量規范,結合國內外各種數據處理計算程序的開發成果與經驗,充分利用計算機軟、硬件技術,開發一個功能完善、操作簡便、界面友好、可靠實用的交會法數據處理程序。4、程序應具有完善的數據輸入、輸出接口功能。具有方便直觀的輸入、輸出窗體,實行可視化管理,支持測量技術人員完成各項數據處理與分析工作。5、在程序設計、開發和運行過程中,要充分考慮軟件生命周期和軟件工程開發的特點,即程序開發同樣

24、要經過軟件分析、設計、實施、集成、調試、完善、維護和全面完成開發工作等步驟,同時要為軟件的擴充和進一步完善提高留有充分的余地,以確保其先進性。6、程序開發過程中,應充分借鑒現有測量軟件的實現及計算方法,以達到改進軟件、提高精度、方便實用的目的。3.1.4程序的開發過程交會法計算程序的開發過程,應包括程序的設計階段、開發階段、和程序的測試完善階段。程序的總體設計階段,是對程序的整體功能與結構進行分析與設計,主要包括程序的總體架構、程序系統設計和程序功能模塊分塊開發設計等過程;程序的開發階段,是根據程序設計階段所提出的方案與計劃,進行具體的實施,編寫程序代碼完成局部功能模塊的開發等具體內容,并對所

25、編寫的代碼進行調試與修改;最后需對所形成程序的代碼進行具體的調試,對程序的運行情況進行測試并不斷完善,這就是程序的測試完善階段。 3.2 程序的總體設計(一)總體設計(概要設計)總體設計就是確定軟件的結構以及各組成成分(子系統或模塊)之間的相互關系。(二)總體設計的任務(1)將系統劃分成模塊(2)決定每個模塊的功能(3)決定模塊的調用關系(4)決定模塊的界面,即模塊間傳遞的 數據通過這個階段的工作將劃分出組成系統的物理元素程序、文件、數據庫、人工過程和文檔等等,但是每個物理元素仍然處于黑盒子級,這些黑盒子里的具體內容將在以后仔細設計。總體設計階段的另一項重要任務是設計軟件的結構,也就是要確定系

26、統中每個程序是由哪些模塊組成的,以及這些模塊相互間的關系。 (三)總體設計的基本目的總體設計的基本目的就是回答系統應該如何實現這個問題,所以總體設計又稱為概要設計或初步設計。(四)總體設計的意義在詳細設計之前進行總體設計可以站在全局高度上,花較少成本,從較抽象的層次上分析對比多種可能的系統實現方案和軟件結構,從中選出最佳方案和最合理的軟件結構,從而用較低成本開發出較高質量的軟件系統。(五)總體設計過程通常由兩個主要階段組成:1.系統設計:確定系統的具體實現方案。2.結構設計:確定軟件結構。可分為以下9個步驟:(1)設想供選擇的方案總體設計階段分析員應該考慮各種可能的實現方案,并且力求從中選出最

27、佳方案。需求分析階段得出的數據流圖是總體設計的極好的出發點。數據流圖中的某些處理可以邏輯地歸并在一個自動化邊界內作為一組,另一些處理可以放在另一個自動化邊界內作為另一組。這些自動化邊界通常意味著某種實現策略。 設想把數據流圖中的處理分組的各種可能的方法,拋棄在技術上行不通的分組方法(例如,組內不同處理的執行時間不相容),余下的分組方法代表可能的實現策略,并且可以啟示供選擇的物理系統。在總體設計的該步驟中分析員僅僅一個邊界一個邊界地設想并且列出供選擇的方案,并不評價這些方案。(2)選取若干個合理的方案至少選取低成本、中等成本和高成本三種方案。每種方案準備四份資料:系統流程圖;組成系統的物理元素清

28、單;成本/效益分析;實現這個系統的進度計劃。(3)推薦最佳方案分析員應該綜合分析對比各種合理方案的利弊,推薦一個最佳的方案,并且為推薦的方案制定詳細的實現計劃。在使用部門的負責人接受了分析員所推薦的方案之后,將進入總體設計過程的下一個重要階段結構設計。(4)功能分解程序(特別是復雜的大型程序)的設計,通常分為兩個階段完成:a.結構設計:結構設計是總體設計階段的任務。結構設計確定程序由哪些模塊組成,以及這些模塊之間的關系。b.過程設計:過程設計是詳細設計階段的任務。過程設計確定每個模塊的處理過程。為確定軟件結構,首先需要從實現角度把復雜的功能進一步分解。一般說來,經過分解之后應該使每個功能對大多

29、數程序員而言都是明顯易懂的。功能分解導致數據流圖的進一步細化,同時還應該用IPO圖或其他適當的工具簡要描述細化后每個處理的算法 (5)設計軟件結構通常程序中的一個模塊完成一個適當的子功能。應該把模塊組織成良好的層次系統,頂層模塊調用它的下層模塊以實現程序的完整功能,每個下層模塊再調用更下層的模塊,從而完成程序的一個子功能,最下層的模塊完成最具體的功能。(6)數據庫設計如需使用數據庫,分析員應該在需求分析階段對系統數據要求所做的分析的基礎上進一步設計數據庫。包括下述四個步驟:a.模式設計: 模式設計的目的是確定物理數據庫結構。b.子模式設計:子模式是用戶使用的數據視圖。c.完整性和安全性設計。d

30、.優化:主要目的是改進模式和子模式以優化數據的存取。(7)制定測試計劃在軟件開發的早期階段考慮測試問題,能促使軟件設計人員在設計時注意提高軟件的可測試性。(8)書寫文檔系統說明,用系統流程圖描繪的系統構成方案;組成系統的物理元素清單;成本效益分析;對最佳方案的概括描述;精化的數據流圖;用層次圖或結構圖描繪的軟件結構;用IPO圖或其他工具(例如,PDL語言)簡要描述的各個模塊的算法;模塊間的接口關系;需求、功能和模塊三者之間的交叉參照關系等等。用戶手冊是修改更正在需求分析階段產生的初步的用戶手冊。而測試計劃包括測試策略,測試方案,預期的測試結果,測試進度計劃等等。(9)審查和復審最后應該對總體設

31、計的結果進行嚴格的技術審查,在技術審查通過之后再由使用部門的負責人從管理角度進行復審。3.3 程序的詳細設計(一)詳細設計概述詳細設計是軟件設計的第二步。在它的前一步概要設計階段,已經確定了軟件系統的總體結構并給出了各個組成模塊的功能和模塊間的聯系(接口)。那么這一步將要在上述結果的基礎上,著重是考慮“怎樣實現”這個軟件系統“的問題。 (二)詳細設計的目的:為軟件結構圖 (SC) 中的每一個模塊確定采用的算法和模塊內數據結構,用某種選定的表達工具給出清晰的描述。軟件設計是軟件工程過程的核心技術。軟件詳細設計也稱為模塊設計,物理設計,是指體系結構選擇階段之后所進行的技術性的活動。詳細設計主要集中

32、在體系結構表達式的細化,選擇詳細的數據結構和算法。(三)詳細設計的任務 軟件設計是一個把軟件需求轉換為軟件表示的過程。從技術的角度劃分,詳細設計可以分為數據設計、系統結構設計以及過程代碼設計。具體可分為如下任務:(1)為每一模塊確定算法(2)確定每一模塊使用的數據結構(3)確定模塊的外部接口和用戶界面(4)為每一模塊設計一組測試用例(四) 詳細設計的步驟 詳細設計從體系結構設計階段開始,直到得到一張編碼階段之前的詳細完整的設計圖。(五)詳細設計的圖形描述工具 目前流行的工具可以分為三類:(1)圖形工具;如程序流程圖、盒圖、PAD圖、序列圖、數據流圖,其中,程序流程圖又稱為程序框圖,是詳細設計中

33、最古老、使用最廣泛的圖形描述工具。是流經一個系統的信息流、觀點流或部件流的圖形代表。(2)表格工具;如判定表。(3)語言工具;如程序設計語言PDL第4章 交會法測量計算的程序實現及精度評定4.1 本論文采用的編程語言概述Visual Studio 是微軟公司推出的開發環境,Visual Studio 可以用來創建 Windows 平臺下的 Windows 應用程序和網絡應用程序,也可以用來創建網絡服務、智能設備應用程序和 Office 插件。根據上面提出的交會法程序開發的總體目標與原則,兼顧本程序的開發內容以及程序的總體結構,本程序將主要采用基于.net的visual C#語言作為開發工具。V

34、isual C#.net是美國Microsoft公司面向Windows程序設計的可視化和面向對象的高效快速的開發工具。它以可視化技術為基礎,以C#語言為藍本,以眾多的集成工具為骨架,在計算機領域的諸多方面都發揮著重要的作用。它為Wnidows應用程序的開發提供了強有力的支持,能夠方便快速地開發出一套界面友好、執行速度快、易于維護升級的應用程序。經過微軟公司的不斷完善,Visual C#.net在開發速度、程序執行效率、程序大小、與操作系統的兼容性等方面都有極大的提高,這使得它適合較多種類應用程序的開發。C#具有如下特點:(1)簡潔的語法,在默認的情況下,C#的程序在.NET框架提供的“可操控”

35、環境下運行,不允許直接的內存操作,相比于C語言和C+語言則少了煩瑣的指針操作,同時C+中被廣泛應用的一些操作符也不再保留;(2)巧妙的面向對象設計,C#提供了一個叫做裝箱與拆箱的機制來完成這種操作,而不會給使用者帶來麻煩,同時,C#只允許單繼承,即一個類不會有多個基類,從而避免了類型定義的混亂;(3)與WEB的緊密結合,因為有了WEB服務框架的作用,對程序員來說,網絡服務看起來就像C#的本地對象,程序員能夠利用它們已有的面向對象的知識和技巧開發WEB服務。僅需要使用簡單的C#語言結構,C#組件就能夠方便地位WEB服務;(4)完備的完全性與錯誤處理能力,.NET運行庫提供了代碼訪問安全特性,它允

36、許管理員和用戶根據代碼的ID來配置安全等級,而對于變量則是類型安全的,C#中不能使用未被初始化的變量,對象的成員變量由編譯器負責將其置零,當局部變量未經初始化而被使用時,編譯器將做出提醒。(5)靈活性與兼容性,在簡化語法的同時,C#并沒有失去靈活性。雖然它不能用來開發硬件驅動程序,在默認的狀態下沒有指針等,但是,它仍然不失靈巧性,如果需要,C#允許軟件開發人員將某些類或者類的某些方法聲明為非安全的,這樣,就可以使用指針、結構或者是靜態數組,并且調用這些非安全的代碼不會帶來任何其他的問題。由于C#遵守.NET公用語言規范,從而保證了C#組件與其他語言組件間的互操作性。4.2 總體設計 根據上文所

37、述,程序的總體設計就是確定程序的結構以及各組成成分(子程序或模塊)之間的相互關系。本節著重探討交會法程序的總體設計問題。4.2.1 劃分模塊及模塊功能本文所編寫的交會法處理程序劃分為如下模塊:(1)設置精度評定參數模塊:由于在進行精度評定時需要給定測角或測邊的精度指標,只有給定相應的精度指標才能根據觀測值計算出相應交會方法的精度,所以需要編寫設置參數模塊;(2)測角交會模塊:本文欲討論的測角兩點前方交會、測角兩點側方交會、測角三點后方交會,都是測角交會,故可將其統一為測角交會模塊;(3)測邊交會模塊:除了(2)中所述的關于測角交會方法的測角交會模塊外,當涉及到測邊交會計算時,還應建立測邊交會模

38、塊。以上三種模塊可視為建立交會程序的主模塊,對于主模塊(2)(3)還應考慮以下子模塊:(1)相應交會法模型計算數據輸入子模塊;(2)交會點坐標計算子模塊;(3)交會點精度評定子模塊;(4)結果輸出子模塊。 除此以外,由于計算過程中頻繁涉及到度分秒與弧度轉換過程,所以筆者將這一過程單獨編寫成為一個模塊,便于重復調用。4.2.2 模塊間調用關系本文所編交會程序模塊間調用關系如下:(1)由于“測角交會”主模塊與“測邊交會”主模塊計算過程相對獨立,所以這兩個主模塊間不存在調用關系,是平行獨立關系;(2)在計算交會點精度時,需要用到“設置精度評定參數模塊”中存儲的數據,顯然,“測角交會”主模塊與“測邊交

39、會”主模塊需要調用“設置精度評定參數”主模塊;(3)“設置精度評定參數”模塊只是涉及精度指標數據的傳遞,與子模塊沒有調用關系;(4)“測角交會”主模塊與“測邊交會”主模塊在計算中均需調用各子模塊,并且須要按一定順序調用,即首先是調用相應交會法模型計算數據輸入子模塊,接著是調用交會點坐標計算子模塊,然后是調用交會點精度評定子模塊,最后是調用結果輸出子模塊;(5)在上述(4)過程中,需要根據計算過程調用度分秒與弧度轉換模塊。4.2.3 交會程序界面及模塊間數據的傳遞(一)交會程序各用戶界面本文采用窗體加菜單的方式構成交會程序的主界面,同時也是為了可以隨著交會工程的擴展而同步擴展本文的交會程序。如下

40、圖4-1所示,主菜單設置、測角交會、測邊交會分別映射上文所述三個主模塊:參數設置模塊、測角交會模塊、測邊交會模塊。圖4-1 交會法應用程序用戶界面主菜單測角交會下有三個子菜單,測角兩點前方交會、測角兩點側方交會、測角三點后方交會,如下圖4-2所示。圖4-2 交會法應用程序測角交會子菜單界面主菜單測邊交會下有一個子菜單,測邊兩點交會,如下圖4-3所示。圖4-3 交會法應用程序測邊交會子菜單界面(二)模塊間數據傳遞本文所述交會程序模塊間數據傳遞過程如下:(1)無論是“測角交會”模塊還是“測邊交會”模塊,由于在交會精度評定中都需要測角或是測邊的精度指標,所以“設置”模塊的數據必須傳遞到“測角交會”模

41、塊和“測邊交會”模塊中;(2)由于“測邊交會”和“測角模塊”需要的數據不同,即使是“測角交會”,由于前方交會、側方交會、后方交會需要的數據不同,或者說是形式有差別,所以為了區分模型或者是在輸入數據格式上統一編碼加以區分進而傳遞數據,或是各模型采用獨立的數據傳遞結構,前者輸入數據結構規則增多但冗余度小,后者輸入數據結構簡單但是卻有一定的結構冗余,本文所編寫程序采用的是后者,即以獨立的數據傳遞結構來傳遞數據,具體實現過程筆者將在下文詳細設計部分論述;(3)由于本文采用獨立機構傳遞各自模型數據,所以對于“測邊交會”和“測角模塊”這兩個主模塊下的四個主模塊,即上文所述的“相應交會法模型計算數據輸入子模

42、塊”、“交會點坐標計算子模塊”、“交會點精度評定子模塊”、“結果輸出子模塊”,亦是具有獨立的數據傳輸過程,本文不再贅述。4.3詳細設計4.3.1數據輸入格式設計正如上文所述,交會方法的計算原理在公式推導中采用了一定的規則,比如前方交會的點號順序是點A、B、P按照逆時針方向編號的,其中A、B是已知點,P為未知點,若點號順序與按照公式推導所采用的點號順序不同,則顯然會造成計算錯誤,所以,為了避免因為輸入數據的順序問題造成計算錯誤,本文首先就數據的輸入格式進行設計。(一)測角兩點前方交會 由于本文都是按照經典的公式編寫交會法程序的,所以數據輸出格式理應按照經典公式的點號編寫順序,對于測角兩點前方交會

43、本文規定如下:(1)點號順序為:按照逆時針編排A、B、P(2)其中,A、B點為已知點,P為待定點,BAP=,ABP=按照上述規定則可組成如下測角兩點前方交會程序數據輸入格式:A點X坐標,A點Y坐標B點X坐標,B點Y坐標BAP即值ABP即值上述格式中,坐標單位為米,角度單位為度分秒格式,如本文所采用的測角兩點前方交會程序示例數據格式:37477.54,16307.2437327.20,16078.9040.415775.1902(二)測角兩點側方交會對于測角兩點側方交會本文規定如下:(1)按照逆時針A、B、P(2)A、B點為已知點,P為待定點,若為BAP=,則角度前標識“1”,若ABP=,則角度

44、前標識“2”按照上述規定則可組成如下測角兩點前方交會程序數據輸入格式:a.若BAP=,則格式如下:A點X坐標,A點Y坐標B點X坐標,B點Y坐標1,BAP即值APB值b.若ABP=,則格式如下:A點X坐標,A點Y坐標B點X坐標,B點Y坐標2,ABP即值APB值上述格式中,坐標單位為米,角度單位為度分秒格式,如本文所采用的測角兩點前方交會程序示例數據格式:6244.732, 28117.8095551.322, 28413.7011,47.594268.2632 (三)測角三點后方交會對于測角兩點側方交會本文規定如下:(1)按照逆時針A、B、C(2)P為待定點,B點為交會角公共邊,即APB=,CP

45、B=按照上述規定則可組成如下測角三點后方交會程序數據輸入格式:A點X坐標,A點Y坐標B點X坐標,B點Y坐標C點X坐標,C點Y坐標APB即值CPB即值上述格式中,坐標單位為米,角度單位為度分秒格式,如本文所采用的測角三點后方交會程序示例數據格式:2858.06,6860.084374.87,6564.145144.96,6083.0736.2420118.5818(四)兩點測邊交會對于測角兩點側方交會本文規定如下:(1)按照逆時針A、B、P(2)A、B點為已知點,P為待定點,A點對應邊a,B點對應邊b按照上述規定則可組成如下測角三點后方交會程序數據輸入格式:A點X坐標,A點Y坐標B點X坐標,B點

46、Y坐標A點對應邊aB點對應邊b上述格式中,坐標單位為米,距離單位為米,如本文所采用的兩點測邊交會程序示例數據格式:3401438.75,533934.583400367.42,536076.442586.822957.304.3.2參數設置模塊設計本文所探討的交會法程序參數設置模型設計界面如下圖4-4所示:圖4-4 交會法應用程序參數設置窗口界面對于測角類交會計算方法,只需要給定相應測角中誤差即可自動進行測角類交會方法精度評定;而對于測邊類交會,由于在實際工程中測邊一般比較小,根據有關參考文獻研究,可以忽略測邊儀器標稱比例誤差對測邊精度的影響,而標稱固定誤差的影響則相比顯著一些,故筆者采用只輸

47、入測邊標稱固定誤差的方法來對測邊類交會方法進行精度評定。具體編程實現過程中,筆者采用全局變量方法獲得用戶輸入的測角中誤差及測邊標稱固定誤差,采用全局變量的目的就是在整個程序運行過程中,可以隨時更改兩項指標值就可以實現精度的重新運算,而無需重新關閉再打開程序。4.3.3各子模塊設計(1)輸入子模塊 輸入子模塊采用C#自帶的打開文件窗口,并對改窗口相應屬性如窗口標題名、采用的文件后綴名等,為了動態建立數組,采用C#的數組的數組存儲導入的數據。圖4-5 交會法應用程序打開文件窗口界面(2)輸出子模塊 導入的數據可以立刻顯示在系統集成的多文本框中,以供用戶閱讀與檢核,如下圖4-6。圖4-6 交會法應用

48、程序測角兩點交會法計算原始數據顯示界面計算結果則在相應輸入數據的后面,同樣,以供閱讀與分析,如下圖4-7。圖4-7 交會法應用程序測角兩點交會法計算及精度評定結果顯示界面(3)度分秒與弧度轉換子模塊 本文采用獨立函數的方法構建度分秒與弧度轉換子模塊,以實參與形參方式傳遞數據,方便快捷,以利于程序對度分秒與弧度轉換的需要。結論與展望1.主要結論(1)由于交會法數學模型是在點與所測角或所測邊具有一定順序或幾何關系的前提下進行推導的,所以在使用過程中必須注意其順序,編程時就需要更加注意;(2)由于編程時采用一定的算法結構,使得可以在未來可以不斷對程序進行改進與擴充,可以逐步將面向過程改進為面向對象;

49、(3)編程實現交會法應用程序,可以明顯加快測繪速度,提高工作便利,益處是非常明顯的,所以在工作中,應該不斷將測量理論、實踐遇到的可編程問題、編程語言三者融合,編制出更先進、更便捷的測量程序,更好的為測繪事業服務。2.不足與展望(1)本文所討論的交會法計算及精度評定模型都為比較經典的方法,如測角兩點交會,測邊兩點交會,為了程序更廣的適用性,尚需建立多點測角、測邊以及邊角交會程序等;(2)雖然本文采用的是基于.NET的C#語言,即使用的是面向對象的編程語言,但編程結構中依舊采用的是面向過程的編程方法,存在一定的靈活性和冗余度,在今后編程實踐中,應實現由面向對象向面向過程的編程思路轉變;(3)測量的

50、原則是步步檢核,本步工作未作檢核不做下一步工作,由于論文書寫時間限制,本文只探討并編寫了常用交會程序的計算和精度評定,尚需建立其檢核過程。綜上所述,由于程序計算的便捷,對于加快測繪速度,提高工作便利是有非常有益的,本文所探討的是基于個人計算機的交會法計算程序,如若將交會程序移植進入PDA、CASIO計算器、全站儀或是測量機器人中時,則可以更好更快的為測量工作服務,所以交會法應用程序的實現是有很大應用空間與前景的。致 謝時光荏苒,我兩年半的學習時間即將完滿結束。在此謹以交會法測量計算的程序實現及精度評定一文獻給兩年來所有支持我、幫助我、關心我的人們,向他們表達我最真摯的謝意。首先感謝我的老師。我

51、的論文從選題、研究、撰寫直至定稿,均透露著老師們的悉心指導。他們嚴格要求、熱情鼓勵,為我創造了很多鍛煉提高的機會。為我的論文順利完成指出了正確的方向。衷心的感謝沈陽農業大學的老師和同學。感謝我的同事貢亮的幫助和支持。感謝所有人,我一定不辜負大家的厚望,好好工作,好好生活。參考文獻1 張正祿等.工程測量學M.北京:高等教育出版社,20042 章書壽、孫在宏等.地籍調查與地籍測量學M.北京:測繪出版社,20083 張正祿. 工程測量學的發展評述J.測繪通報.2000(1)4 李建豪. 距離交會的誤差估算及應用J.城市勘測.2011(3)5 武漢測繪科技大學測量平差教研室編著. 測量平差基礎(第三版)M.背景:測繪出版社,1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論