測繪工程畢業(yè)論文 測量平差程序設(shè)計(jì)
《測繪工程畢業(yè)論文 測量平差程序設(shè)計(jì)》由會員分享,可在線閱讀,更多相關(guān)《測繪工程畢業(yè)論文 測量平差程序設(shè)計(jì)(65頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、測繪工程畢業(yè)論文 測量平差程序設(shè)計(jì) 摘 要 測量平差是測繪類專業(yè)的一門重要的專業(yè)基礎(chǔ)課程,是用于觀測數(shù)據(jù)處理的 一門應(yīng)用數(shù)學(xué)。然而因?yàn)槠溥\(yùn)算量比較大,這變使大伙兒在學(xué)習(xí)和使用的時(shí)候感 受十分頭疼。盡管有專門多簡化了的平差算法,比如高斯約化法,然而這些算法 一方面會阻礙運(yùn)算精度,另一方面也不能有效的減少運(yùn)算量。 平差運(yùn)確實(shí)是利用最小二乘原理排除觀測值與起算數(shù)據(jù)之間的矛盾,求出各 待定元素的平差值并評定精度。而在經(jīng)典測量平差中,要緊研究四種平差模型方 程(條件平差、間接平差、附有未知參數(shù)的條件平差和附有限制條件的間接平差) 的列立和求解,其牽涉到大量的矩陣運(yùn)算,傳統(tǒng)的人工運(yùn)算工作量專門大。
2、隨著 運(yùn)算機(jī)的顯現(xiàn),矩陣運(yùn)算就變得輕松,而且運(yùn)算機(jī)的運(yùn)行速度快,精度高,專門 是關(guān)于具有大量矩陣運(yùn)算,運(yùn)算機(jī)輕松解決。前提是要編好相應(yīng)的程序代碼。 本文運(yùn)用visual basic語言編制了一個(gè)平差軟件,要緊對水準(zhǔn)網(wǎng)和附合導(dǎo)線 進(jìn)行了平差的編制和軟件程序界面的設(shè)計(jì),實(shí)現(xiàn)的功能要緊有對水準(zhǔn)網(wǎng)數(shù)據(jù)和附 合導(dǎo)線數(shù)據(jù)的平差運(yùn)算,因此為了平差后能使用數(shù)據(jù),本軟件還設(shè)計(jì)了數(shù)據(jù)輸出 的功能,使界面更友好,方便用戶使用。 關(guān)鍵詞:水準(zhǔn)網(wǎng)間接平差,visual basic ,附合導(dǎo)線條件平差,visual basic界 面設(shè)計(jì)(GUI) ABSTRACT The measurement adjustme
3、nt is a professional basic course of Geomatics engineer, It is used to process the observation data of Applied Mathematics, which is characterized by the large amount of calculatioiL the process of learning and the using become very complex. Although many adjustment algorithm methods are simplified
4、such as Gauss reduction method, but on the one hand these algorithms affect the accuracy of calculation, on the other hand they cannot effectively reduce the amount of calculation. Adjustment calculation is the principle of least squares to eliminate the contradiction between the observed values an
5、d the initial data, calculating the adjusted values of all pending elements and assessing accuracy. Classical surveying adjustment mainly contains four adjustment model equations (conditions adjustment, indirect adjustment, accompanied by the unknown parameters condition adjustment and accompanied b
6、y restrictions in indirect adjustment)of column and solving, it involves large number of matrix operations, the calculation workload of traditional manual measurement data processing method requires the preparation of a specific treatment program matrix operations, so the procedures are complicated
7、and difficult. The emergence of the computer makes matrix operations become easy, and the computer is lunning fast and at high precision, to the large number of matrix operations, under the premise of the compiled code, the computer can easily solve many problems. In this paper, an adjustment softw
8、are is used by visual basic language of the leveling network and connecting traverse adjustment of the preparation and program interface design to achieve the main function of the leveling network data and wire data adjustment calculation. The software also design the function of the data output, it
9、 is friendly and convenient for users to operate. Key words: parameter adjustment of leveling network ,Visual basic, Visual basic interface design(GUI) 中文摘要 I ABSTRACT II 1引言 1 1.1 現(xiàn)狀分析 1 1.2 目的及意義 1 1.3 研究內(nèi)容 2 2 V i sua I Bas i c編程語言概述 3 2. 1 VisuaI Basic 簡介 3 2. 1. 1 Visual Basic 的進(jìn)展 3
10、2.1. 2 VB的功能特點(diǎn) 3 2. 2 VisuaI Basic 簡介 4 2.1.1 操作界而簡介 4 2.1.2 幾個(gè)常用控件介紹 7 2.1.3 2.3 VB編程語言書寫和變量聲明 7 2.1.4 矩陣在VB中的表述 7 2.1.5 VB中矩陣運(yùn)算 8 2.1.6 程序操縱語句 11 2.1.7 2.7控件數(shù)組 12 3平差運(yùn)算差不多理論 13 3.1 條件平差 13 3.1.1 條件平差原理 13 3.1. 2條件平差程序設(shè)計(jì)流程圖 15 3. 2間接平差 16 3. 2. 1間接平差原理 16 3. 2. 2間接平差程序設(shè)計(jì)流程圖 18 3.2附合
11、導(dǎo)線平差運(yùn)算 19 3. 3.1附合導(dǎo)線平差原理 29 4. 2.2附合導(dǎo)線平差程序設(shè)計(jì)流程圖 21 4平差軟件界面設(shè)計(jì) 23 4.1平差軟件整體展現(xiàn) 23 4. 1. 1登錄界而 23 4. 1.2平差軟件主界面 23 4. 1.3水準(zhǔn)網(wǎng)間接平差界面 24 4. 1.4附合導(dǎo)線平差界面 25 4. 2平差軟件界面設(shè)計(jì) 25 4. 2. 1 Visual basic (GUI)簡介 25 4. 2. 2界而設(shè)計(jì) 26 4. 3平差軟件界面設(shè)計(jì) 26 4. 3.1水準(zhǔn)網(wǎng)間接平差界面設(shè)計(jì) 26 5. 3. 2附合導(dǎo)線平差界而設(shè)計(jì) 28 5平差軟件程序設(shè)計(jì) 30 5.
12、1 水準(zhǔn)網(wǎng)間接平差 30 6. 1. 1 數(shù)據(jù)輸入 30 1.1.2 軟件的使用 31 1.1.3 程序代碼 32 5. 2附合導(dǎo)線平差 34 1. 2.1數(shù)據(jù)輸入 34 5. 2.2軟件的使用 35 6. 2. 3 程序代碼 36 6算例演算 44 6.1 水準(zhǔn)網(wǎng)間接平差 44 6. 2附合導(dǎo)線條件平差 45 7結(jié)論 48 7. 文獻(xiàn) 49 1引言 1.1 現(xiàn)狀分析 Visual Basic是一種由微軟公司開發(fā)的包含協(xié)助開發(fā)環(huán)境的事件驅(qū)動編程語言。 從任何標(biāo)準(zhǔn)來說,VB差不多上世界上使用人數(shù)最多的語言一一不僅是盛贊VB的開發(fā)者 依舊埋怨VB的開發(fā)者的數(shù)量。它源
13、自于BASIC編程語言。VB擁有圖形用戶界面(GUI) 和快速應(yīng)用程序開發(fā)(RAD)系統(tǒng),能夠輕易的使用DAO、RDO、ADO連接數(shù)據(jù)庫,或者 輕松的創(chuàng)建ActiveX控件。程序員能夠輕松的使用VB提供的組件快速建立一個(gè)應(yīng)用程 序。 水準(zhǔn)網(wǎng)是建立高程操縱的一種常規(guī)方法。為了提高水準(zhǔn)測量的效率,使得水準(zhǔn)測量 的內(nèi)外業(yè)一體化,提高數(shù)據(jù)處理速度、精度和可靠性,外業(yè)觀測上需采納更加科學(xué)、快 速的作業(yè)模式,內(nèi)業(yè)數(shù)據(jù)處理上需采納簡便、可靠的數(shù)據(jù)處理軟件。隨著測繪儀器和運(yùn) 算機(jī)軟件業(yè)的進(jìn)展,目前市場上已顯現(xiàn)多種操縱網(wǎng)平差運(yùn)算軟件,只是有些平差軟件界 面復(fù)雜,難明白,需要一段時(shí)刻的學(xué)習(xí)才能使用;還有確實(shí)是這
14、些軟件,要么定權(quán)不合 理,要么就價(jià)格昂貴。比如常用的平差易軟件確實(shí)是在Windows系統(tǒng)下用VC開發(fā)的操縱 測量數(shù)據(jù)處理軟件,就存在著權(quán)分配不合理,以致改正數(shù)過大,平差結(jié)果偏離真實(shí)值的 問題。盡管發(fā)覺了問題,然而111于VC語言的局限和作為收費(fèi)軟件,其源代碼不公布等緣 故,致使此類問題久久不能得到解決。 1.2 目的及意義 Visual Basic編程語言是一種可視化編程語言,通過近兒年的進(jìn)展,它已成為 一種專業(yè)化的開發(fā)語言和環(huán)境。其依靠于現(xiàn)代pc機(jī)的高性能,以運(yùn)算機(jī)性能換取編 程的簡便。它把科學(xué)運(yùn)算、結(jié)果的可視化和編程集中在一個(gè)可視化的環(huán)境中,不僅功能 強(qiáng),而且便于輸入數(shù)據(jù),易于把握和使
15、用。 測量平差是測繪類專業(yè)的一門重要的專業(yè)基礎(chǔ)課程,是用于處理觀測數(shù)據(jù)的一門應(yīng) 用數(shù)學(xué)。平差運(yùn)確實(shí)是利用最小二乘原理排除觀測值與起算數(shù)據(jù)之間的矛盾,求出各待 定元素的平差值并評定精度。而在經(jīng)典測量平差中,要緊研究四種平差模型方程(條件 平差、間接平差、附有未知參數(shù)的條件平差和附有限制條件的間接平差)的列立和求解, 其牽涉到大量的矩陣運(yùn)算,傳統(tǒng)的人工運(yùn)算工作量專門大,已往的測量數(shù)據(jù)處理方法需 要編制特定的處理矩陣運(yùn)算的程序,而且程序復(fù)雜,難度大。隨著運(yùn)算機(jī)的顯現(xiàn),矩陣運(yùn) 算就變得輕松,而且運(yùn)算機(jī)的運(yùn)行速度快,精度高,專門是關(guān)于具有大量矩陣運(yùn)算,運(yùn) 算機(jī)輕松解決。前提是要編好相應(yīng)的程序代碼。
16、本文將分析經(jīng)典測量平差中的條件平差模型和間接平差模型的特點(diǎn),重點(diǎn)運(yùn)用 Visual Basic編程語言編寫水準(zhǔn)網(wǎng)間接平差和單一附合導(dǎo)線的平差程序軟件。用Visual Basic語言編寫出經(jīng)典平差模型程序,運(yùn)用到教學(xué)過程中使各種模型的公式推導(dǎo)與實(shí)際 例題相結(jié)合,關(guān)于提高教學(xué)質(zhì)量及加強(qiáng)學(xué)生關(guān)于《誤差理論與測量平差基礎(chǔ)》課程的明白 得具有重要的意義;關(guān)于我們立即走上工作崗位的同學(xué)來說,它將為我們處理各種實(shí)際 工程的運(yùn)算提供了極大的便利,也能夠?yàn)榻窈蟾嗟墓こ虘?yīng)用編程打下基礎(chǔ),提高工作 效率和質(zhì)量。同時(shí)也使我們在編程方面有更為深入的明白得和把握,對我們以后工作專 門有關(guān)心,比如可編程運(yùn)算器等測量輔助
17、工具,這將會提高我們的工作效率。 1.3 研究內(nèi)容 本設(shè)計(jì)要緊運(yùn)用Visual Basic編程語言,編制操縱測量中水準(zhǔn)網(wǎng)和單一導(dǎo)線的平 差程序軟件。實(shí)現(xiàn)的功能包括:1.水準(zhǔn)網(wǎng)間接平差的平差值,在最小二乘法準(zhǔn)那么 A (VTPV = min)要求下求出誤差方程中的待定參數(shù)X。2.單一導(dǎo)線和導(dǎo)線網(wǎng)的近似 坐標(biāo)推算:近似坐標(biāo)的推算不僅是后續(xù)工作的基礎(chǔ),為條件方程系數(shù)陣的求取做預(yù)備, 更能在此基礎(chǔ)上運(yùn)算坐標(biāo)閉合差,檢驗(yàn)外業(yè)成果的好壞。3. Visual Basic GUI界面設(shè) iT:關(guān)于用戶來說,程序可視化,同時(shí)乂易明白,便于輸入數(shù)據(jù)。4.平差數(shù)據(jù)結(jié)果輸出: 便于用戶使用和查看。5.將幾個(gè)平
18、差程序集中在一個(gè)系統(tǒng)中,并生成exe可執(zhí)行程序, 在windows環(huán)境下通用,無需安裝。因此,本平差軟件讓你的使用絕對省心。對每一個(gè) 功能的實(shí)現(xiàn),其后都附有應(yīng)的算例。 2 Vi suaI Basic編程語言概述 2. 1 Vi suaI Basic 簡介 2. 1. 1 Vi suaI Basic 的進(jìn)展 Visual Basic (簡稱VB)是美國微軟公司推出的windows環(huán)境下的軟件開發(fā) 工具,使用VB能夠既快乂簡單地開發(fā)windows應(yīng)用軟件。Visual是指開發(fā)圖形用 戶界面(GUI)的方法。Visual的意思是 ''視覺的"或 ''可視的〃,也確實(shí)是直觀 的編程方法。在VB
19、中引入了控件的概念,如各種各樣的按鈕、文本框、復(fù)選框等, VB把這些控件模式化,同時(shí)每個(gè)控件都由假設(shè)干屬性來操縱其外觀、工作方法。 如此,采納方法無需編寫大量代碼去描述界面元素的外觀和位置,而只要把預(yù)先 建立的控件加到屏幕上,就像使用 ''畫圖〃之類的繪圖程序,通過選擇畫圖工具 來畫圖一樣,可視化程序設(shè)計(jì)語言除了提供常規(guī)的編程功能外,還提供一套可視 化的設(shè)計(jì)工具,便于程序員建立圖形對象,巧妙地把windows編程的復(fù)雜性 ''封 裝〃起來。VB在原有BASIC語言的基礎(chǔ)上進(jìn)一步進(jìn)展,包含了數(shù)百條語句、函數(shù)及 關(guān)鍵詞,其中專門多與Windows GUI有直截了當(dāng)關(guān)系。VB與BASIC之間有著千絲
20、 萬縷的聯(lián)系,假如學(xué)過BASIC語言的話,看到VB程序結(jié)構(gòu)會感到專門親切。專業(yè) 人員能夠用Visual Basic實(shí)現(xiàn)其他任何Windows編程語言的功能,而初學(xué)者只要 把握幾個(gè)關(guān)鍵詞就能夠建立有用的應(yīng)用程序。隨著微型運(yùn)算機(jī)技術(shù)的飛速進(jìn)展, 美國微軟公司以其具有多任務(wù)性、圖形用戶界面、動態(tài)數(shù)據(jù)交換、對象鏈接與嵌 入等強(qiáng)大功能,而成為當(dāng)今微型運(yùn)算機(jī)操作系統(tǒng)的主流產(chǎn)品。許多商用軟件公司 為適應(yīng)這一趨勢推出windows境下的軟件開發(fā)工具,如Visual C++, Delphi, PowerBuilder等等。但關(guān)于初學(xué)者期望在windows環(huán)境中開發(fā)一樣的 應(yīng)用程序,VB無疑是較理想的。VB是目前
21、眾多windows軟件開發(fā)工具中效率最高 的一個(gè)。 2.1.2 VB的功能特點(diǎn) 1 .面向?qū)ο? VB采納了面向?qū)ο笤O(shè)計(jì)思想,它差不多思路是把復(fù)雜設(shè)計(jì)問題分解為個(gè)個(gè)能 夠完成獨(dú)立功能一相對簡單對象集合。所謂‘'對象”確實(shí)是個(gè)可操作實(shí)體如窗 體、窗體中命令按鈕、標(biāo)簽、文本框等面向?qū)ο缶幊叹涂雌饋泶罘e木樣員可依照 和界面設(shè)計(jì)要求直截了當(dāng)在屏幕上 ''畫'”出窗口、菜單、按鈕等區(qū)別類型對象并為 每個(gè)對象設(shè)置屬性。 2 .事件驅(qū)動 在Windows環(huán)境下是以事件驅(qū)動方式運(yùn)行每個(gè)對象的都能響應(yīng)多個(gè)區(qū)別事 件,每個(gè)事件都能驅(qū)動段代碼一事件過程該代碼決定了對象功能通常稱這種機(jī) 制為事件驅(qū)動事件可由用
22、戶操作觸發(fā)也能夠由系統(tǒng)或應(yīng)用觸發(fā)例如單擊個(gè)命令按 鈕就觸發(fā)了按鈕Click(單擊)事件該事件中代碼就會被執(zhí)行假設(shè)用戶未進(jìn)行任何操 作(未觸發(fā)事件)那么就處于等待狀態(tài)整個(gè)應(yīng)用確實(shí)是由彼此獨(dú)立事件過程構(gòu)成。 3 .軟件Software集成式開發(fā) VB為編程提供了個(gè)集成開發(fā)環(huán)境在那個(gè)環(huán)境中編程者可設(shè)計(jì)界面、編寫代 碼、調(diào)試直至把應(yīng)用編譯成可在Windows中運(yùn)行可執(zhí)行文件并為它生成安裝VB 集成開發(fā)環(huán)境為編程者提供了專門大方便。 4 .結(jié)構(gòu)化設(shè)計(jì)語言 VB具有豐富數(shù)據(jù)類型是種附合結(jié)構(gòu)化設(shè)計(jì)思想語言而且簡單易學(xué)此外作為 種設(shè)計(jì)語言VB還有許多獨(dú)到的處 5 .強(qiáng)大數(shù)據(jù)庫訪問功能 VB利用數(shù)據(jù)
23、Control控件能夠訪問多種數(shù)據(jù)庫VB 6. O提供ADOControl控 件不但能夠用最少代碼實(shí)現(xiàn)數(shù)據(jù)庫操作和操縱也能夠取代DataControl控件和 RDOControl 控件 6 .支持對象鏈接和嵌入技術(shù) VB核心是對對象鏈接和嵌入(OLE)技術(shù)支持它是訪問所有對象種思路方法利 用OLE技術(shù)能夠開發(fā)集聲音、圖像、動畫、字處理、Web等對象于體 7.網(wǎng)絡(luò)功能 VB 6.0提供了 DltTML(Dynamic}tTML)設(shè)計(jì)工具利用這種技術(shù)能夠動態(tài)創(chuàng)建 和編輯Web頁面使用戶在VB中開發(fā)多功能網(wǎng)絡(luò)應(yīng)用軟件Software 8 .多個(gè)應(yīng)用向?qū)? VB提供了多種向?qū)鐟?yīng)用向?qū)?、安裝向
24、導(dǎo)、數(shù)據(jù)對象向?qū)Ш蛿?shù)據(jù)窗體向?qū)?過它們能夠快速地創(chuàng)建區(qū)別類型、區(qū)別功能應(yīng)用 9 .支持動態(tài)交換、動態(tài)鏈接技術(shù). 通過動態(tài)數(shù)據(jù)交換(DDE)編程技術(shù)VB開發(fā)應(yīng)用能和其他Windows應(yīng)用的間建 立數(shù)據(jù)通信通過動態(tài)鏈接庫技術(shù)在VB中可方便地用C語言或匯編語言編寫也可 Windows 應(yīng)用接口(. API) 10 .聯(lián)機(jī)關(guān)心功能 在VB中利用關(guān)心菜單和F1功能鍵用戶可隨時(shí)方便地得到所需要關(guān)心信息 VB關(guān)心窗口中顯示了有關(guān)舉例代碼通過復(fù)制、粘貼操作可獵取大量舉例代碼為用 戶學(xué)習(xí)和使用提供方便 2. 2V i sua I Bas i c程序設(shè)計(jì)簡述 2. 2.1操作界面簡介 在默認(rèn)情形
25、下,visual basic的操作界面包含了 6個(gè)要緊的窗口:主窗體, 窗體窗口,工具箱窗口,屬性窗口,工程治理窗口和代碼窗口。下面簡要介紹VB 中這幾個(gè)窗口:
1 .主窗體:
菜單欄 文件/118)09]&9品20) &S運(yùn)行R)查詢?住聶口工只⑴外修韌如甑度)帶助如
工具欄一封,?) 2。 F Mg .
G?n?rd
,S3
工具箱一七
窗體窗口
fl 181 - ? 26、 rail
£14 Sd>
F??*t
代碼窗口
ClijCwtrolTne
立即窗口
HFE
■w>
Axti3?irnr Ftlst
B.MIb □?rtOCCO
?、
3
c5E)~ fk?i
Ajf ? 1 - 3D
狒產(chǎn)M、八的2理“ Mcr,” ||*工&1?丫… 9 E 1團(tuán) ^33 0 25
屬性窗口
窗體布局窗口
圖2.1 VB主窗體圖
EisU?1Bix True v I
2.窗體窗口:它是用來對應(yīng)用程序進(jìn)行界面設(shè)計(jì)的窗口,用戶通過與窗體上的控 件交互即可得到相應(yīng)的結(jié)果,表達(dá)了 VB的可視化編程思想。值得注意的是:每一 個(gè)窗體窗口必 27、須有一個(gè)唯獨(dú)的名字。在設(shè)計(jì)狀態(tài)下,為方便用戶對控件的定位, 窗體由網(wǎng)絡(luò)點(diǎn)組成,能夠通過 ''工具〃 I ''選項(xiàng)〃命令,在 ''通用"標(biāo)簽的 ''顯示 網(wǎng)格〃中改變 ''寬度〃或 ''高度〃的值來改變網(wǎng)格的間距
圖2.2 VB窗體窗口圖
3.工具箱窗口
工具箱中包含有許多圖標(biāo),它是各種控件的制作工具,利用這些 工具,用戶能夠在窗體上設(shè)計(jì)各種控件。標(biāo)準(zhǔn)工具箱內(nèi)只包含了 19個(gè)控件(指針不是控件,其作用僅用于窗體和控件的移動或調(diào) 整它們的大小),用戶可依照需要添加其它控件到工具箱中。具 體方法是選擇 ''工程〃 I ''部件〃命令打開 ',部件〃對話框,在 控件標(biāo)簽頁中選擇需要的部件, 28、然后單擊 ''確定〃按鈕,現(xiàn)在工
General
飛阿A阿
門」"
& G3 國 W、國圈 輸
具箱中將顯示新添加的控件圖標(biāo)按鈕。
圖2.3VB工具箱窗口圖
4 .屬性窗口
用于設(shè)置對象的屬性值,所有窗體或控件的屬性都能夠通 過屬性窗口進(jìn)行修改。如對象名稱、顏色、字體等。屬性窗口 包括以下幾個(gè)部分:
倍命
也瞅眄中就砥明就 級
⑴.對象列表框:單擊下拉按鈕可打開當(dāng)前窗體對象列表, 可選擇要設(shè)定屬性的對象。
(2) .屬性顯示排列方式:有 ''按字母序"和''按分類序〃 兩個(gè)標(biāo)簽。
(3) .屬性列表框:列出當(dāng)前對象在設(shè)計(jì)模式下可用的屬性 及當(dāng)前值,左欄顯示屬性名稱 29、,石欄顯示相應(yīng)的屬性值,并可
由用戶設(shè)置該屬性值。 圖2.4VB屬性窗口圖
(4) .屬性說明:顯示當(dāng)前屬性的含義。
5 .工程治理窗口
工程治理窗口儲存了那個(gè)工程(或應(yīng)用程序)所有的文件,如工程 文件(.vbp)、窗體文件(.frm)、標(biāo)準(zhǔn)模塊文件(.bas)和類模塊文件(.cis)等。 工程治理窗口上方有3個(gè)按鈕,分別是:
(1) .查看代碼:切換到代碼窗口,顯示和編輯代碼。
(2) .查看對象:切換到窗體窗口,顯示和編輯對象。
圖2.5 VB工程治理窗口圖
(3) .切換文件夾:切換本窗口內(nèi)文件夾顯示方式。
6 .代碼窗口
代碼窗口是專門用來進(jìn)行程序設(shè)計(jì)的窗口,顯示和 30、編 輯程序代碼。每個(gè)窗體都有各自的代碼窗口。打開代碼窗 口的方法:
(1)在工程治理窗口選擇一個(gè)窗體或標(biāo)準(zhǔn)模 塊,并選擇 ''查看代碼〃按鈕。
(2)在窗體窗口雙擊控件或窗體本身。 圖2.6 VB代碼窗口圖
(3)選擇 ''視圖〃 I '、代碼窗口〃命令。
2.2.2幾個(gè)常用控件介紹
1 .標(biāo)簽 Label
功能:用于顯示文本(輸出)信息,不能作為輸入信息的界面。能夠設(shè)置標(biāo)簽 的背景顏色,本軟件界面設(shè)計(jì)時(shí)就用到透亮屬性。
2 .文本框TextBox
功能:是一個(gè)文本編輯區(qū)域,能夠輸入,編輯和顯示正文內(nèi)容。這是使用最 頻繁的一個(gè)控件。能夠通過改變屬性來改變文本大小,顏色等。
3 31、 .命令按鈕 CommandButton
功能:同意用戶輸入的命令。當(dāng)用戶鼠標(biāo)點(diǎn)擊此按鈕,便能夠執(zhí)行命令,實(shí) 現(xiàn)所編功能。
2.2.3 VB編程語言書寫和變量聲明
VB語言與其他語言書寫有不同,因此有必要了解VB的書寫方式
1 . VB代碼不區(qū)分字母的大小寫。系統(tǒng)關(guān)鍵字自動轉(zhuǎn)換每個(gè)單詞的首字母大寫;用 戶自定義行以第一次為準(zhǔn)。
2 .語句書寫自由。每一行可書寫兒個(gè)語句,之間用冒號分隔;一行最多255個(gè)字 符;一條語句可分假設(shè)干行書寫,用續(xù)行符(空格+下劃線)連接。
3 .注釋利于程序的愛護(hù)和調(diào)試。用單撇號 '' '〃以及 ''編輯〃工具欄的 ''設(shè)置 注釋塊〃,那么VB中注釋語句會 32、自動變?yōu)榫G色,不參與運(yùn)行。
4 . VB中變量聲明與其他編程語言的變量聲明也有不同,下面簡單的介紹下:
(1)聲明形式:
Dim變量名As自定義類型名
例 Dim Student As StudType
(2)引用:
形式:變量名.元素名
例 表示Student變量中的姓名,第4門課程的成績,那么表示如 下:
Student. Name, Student. Mark (4)
(3)賦值:
如:Student. Name="王剛" Student. Mark(4) =98
其中常用的有聲明形式和賦值,而賦值是使用最頻繁的,本次編程中也大量 使用賦值變量聲明
2. 2. 4 33、矩陣的在VB中的表示
我們明白平差運(yùn)算中,矩陣運(yùn)確實(shí)是必須的,像系數(shù)矩陣,法方程矩陣等都 要用到矩陣。因此用VB編制平差程序的要點(diǎn)和難點(diǎn)確實(shí)是進(jìn)行矩陣運(yùn)算的編制。 在了解矩陣的運(yùn)算法那么后,便可用VB語言編程了。
而用什么來表示矩陣呢?那確實(shí)是數(shù)組,下面重點(diǎn)介紹下數(shù)組,這對程序的 開發(fā)至關(guān)重要!
1 .數(shù)組不是一種數(shù)據(jù)類型,而是一組相同類型的變量的集合。在程序中使用數(shù)組 的最大好處是用一個(gè)數(shù)組名代表邏輯上相關(guān)的一批數(shù)據(jù),用下標(biāo)表示該數(shù)組中的 各個(gè)元素,和循環(huán)語句結(jié)合使用,使得程序書寫簡潔。使用數(shù)組時(shí)需注意:
數(shù)組必須先聲明后使用。數(shù)組分兩類:一類是靜態(tài)(定長)數(shù)組,第二累時(shí)動態(tài)(可 變 34、長)數(shù)組。像a(7, 7)這便是靜態(tài)數(shù)組,a (n,t)確實(shí)是動態(tài)數(shù)組,其中的字母代 表未知數(shù)。
2 .靜態(tài)數(shù)組,也確實(shí)是定長的數(shù)組。如我們想將矩陣
1 2
3 4
那個(gè)兩行兩列的矩陣用VB來表示,能夠表示為
Dim a(l to 2, 1 to 2) as double '變量聲明
a(l, 1)=1: a(l, 2)=1 : a(2, 1)=1 : a(2, 2)=1
如此數(shù)組也變在VB中形成了,因此也能夠聯(lián)合for循環(huán)使用,那么語句 變得更為簡潔。本程序中用到此聯(lián)合,來求解矩陣運(yùn)算。
3.動態(tài)數(shù)組是指在聲明數(shù)組時(shí)未給出數(shù)組的大小(省略括號中的下標(biāo)),當(dāng)要使用 它時(shí),隨時(shí)用 35、ReDim語句重新指出數(shù)組大小。
如redim a(l to n , 1 to n)如此便定義了一個(gè)動態(tài)的n維數(shù)組,注意聲 明必須是redim,不然程序會出錯(cuò)。
那個(gè)地點(diǎn)還需指明的是Dim、Private^ Public變量聲明語句是說明性語句, 可顯現(xiàn)在過程內(nèi)或通用聲明段;ReDim語句是執(zhí)行語句,只能顯現(xiàn)在過程內(nèi)。在過 程中可多次使用ReDim來改變數(shù)組的大小和維數(shù)。但使用ReDim語句會使原先數(shù) 組中的值丟失,能夠在ReDim語句后加Preserve參數(shù)來保留數(shù)組中的數(shù)據(jù)。使用 Preserve時(shí)只能改變最后一維的大小,前面幾維大小不能改變。還有ReDim中的 下標(biāo)能夠是常量,也能夠 36、是有了確定值的變量,這在編程中要注意!另外靜態(tài)數(shù) 組在程序編譯時(shí)就分配儲備單元,而動態(tài)數(shù)組在運(yùn)行時(shí)才分配儲備單元 2.2.5 VB中矩陣的運(yùn)算
為了解決中矩陣運(yùn)算問題,編好相應(yīng)的矩陣運(yùn)算代碼是必須的,通過一個(gè)月 的時(shí)刻終于將矩陣運(yùn)算的代碼編成功,專門是矩陣求逆的運(yùn)算。只是編制的矩陣 求逆代碼前提是滿秩的,關(guān)于秩虧矩陣,就不適用了,由于時(shí)刻緣故,就沒連續(xù) 深入的研究其代碼。因此了,我們平常見到的平差一樣差不多上滿秩的,因此此 代碼的適用性依舊挺強(qiáng)的。下面就具體介紹下,各矩陣運(yùn)算的代碼和思想。
1 .矩陣加減法
(1)那個(gè)代碼比較容易編寫,只要加矩陣中對應(yīng)的數(shù)相加減便能夠得到結(jié)果。 因此此處 37、不給出代碼
2 .矩陣乘法
(1)那個(gè)代碼編程的要點(diǎn)是跟據(jù)矩陣乘法的運(yùn)算法那么,即矩陣的沒一行的數(shù)分 別與另外矩陣的每一列對應(yīng)的數(shù)相乘并全部進(jìn)行相加。明白一個(gè)原那么,編程就 容易了,多次使用for循環(huán)實(shí)現(xiàn)!
(2)代碼:
Public Sub jzcf (ByRef a() As Double, By Ref b() As Double, ByRef c() As Double)
m = UBound (a, 1)
n = UBound (b, 2)
ni = UBound(a, 2)
For i = 1 To m
For j = 1 To n
For ki = 1 To 38、ni
c(i, j) = c(i, j) + a(i, ki) * b(ki, j)
End Sub
3 .矩陣轉(zhuǎn)置
(1)那個(gè)代碼編程的也比較簡單,立即矩陣的行轉(zhuǎn)化成列就行了。
(2)代碼:
Public Sub jzzz(ByRef a() As Double, ByRef b() As Double)
m = UBound (a, 1)
n = UBound (a, 2)
For i = 1 To n
For j = 1 To m
b(i, j) = a(j, i)
Next
Next
End Sub
4 .矩陣求逆
(1)那個(gè)代碼編程專門復(fù)雜,此代碼運(yùn)用 39、的是高斯約化法進(jìn)行矩陣求逆運(yùn)算,編 程的思想是先進(jìn)行增廣矩陣,然后用高斯約化法,將第一列中不是零的數(shù)找出, 進(jìn)行約化,立即每行數(shù)字除以開頭數(shù)字,使每行開頭不是零的數(shù)化為1,之后減去 第一行,如此這行的第一列的開頭就為零了。用這種方法就能夠?qū)⒕仃囎優(yōu)樯先?角矩陣,最后就得到矩陣求逆結(jié)果。。
(2)代碼:
Public Sub jzqn(ByRef qa() As Double, ByRef na() As Double)
Dim a()
n = UBound(qa, 1)
ReDim a(n, 2 * n)
For i = 1 To n
For j = 1 To n
a(i, j 40、) = qa(i, j)
Next j
Next i
For i = 1 To n
For j=n+lTo2*n
If j - i = n Then
a(i, j) = 1
Else
a(i, j) = 0
End If
Next j
Next i
For i = 1 To n
If a(i, i) = 0 Then
For q = i To n
If a(q, i) <> 0 Then
For W = i To 2 * n
zj = a(i, W)
a(i, W) = a(q, W)
a(q, W) = zj
Next W
Exit For
End 41、 If
Next q
If q > n Then MsgBox ”此矩陣不可逆”:Exit Sub
End If
For K = 2 * n To i Step -1
a(i, K) = a(i, K) / a(i, i)
Next K
For j = i + 1 To n
If a(j, i) <> 0 Then
For K = 2 * n To i Step -1
a(j, K) = a(j, K) / a(j, i) - a(i, K)
Next K
End If
Next j
Next i
For i = n To 1 Step -1
If a(i, i 42、) = 0 Then
For q = i - 1 To 1 Step -1
If a(q, i) <> 0 Then
For W = i To 2 * n zj = a(i, W) a(i, W) = a(q, W) a(q, W) = zj
Next W
Exit For End If Next q
End If
For K = 2 * n To i Step -1 a(i, K) = a(i, K) / a(i, i) Next K
For j = i - 1 To 1 Step -1
If a(j, i) <> 0 Then
xxx = a(j, i)
For K 43、= 2 * n To 1 Step -1
a(j, K) = a(j, K) / xxx - a(i, K) Next K End If
Next j Next i For i = 1 To n
For j = 1 To n
na(i, j) = a(i, j + n)
Next j
Next i End Sub
2. 2. 6程序操縱語句
1. MsgBox 語句
VB中提示性語句,格式為:MsgBox 〃語句〃('需要鍵入的提示語') 例如:
MsgBox 〃賬號不對,請重試〃 運(yùn)行結(jié)果:那么顯現(xiàn)一個(gè)對話框,提示用戶。
2. print 語句
VB中最差不多的輸出語 44、句,能夠?qū)⒋蛴〉膬?nèi)容放到form窗口中,也能夠放在 以圖片控件為容器的控件中,還能夠?qū)?shù)據(jù)進(jìn)行輸出,比如輸出到txt文本中, 具體的,后面展現(xiàn)。
3. if語句
If〈表達(dá)式》Then 〈語句塊1>
Else
〈語句塊2>
End If
If語句能夠循環(huán)嵌套,以實(shí)現(xiàn)比較復(fù)雜的邏輯結(jié)果。
4. 循環(huán)語句
(1) for語句格式:
For循環(huán)變量=初值to終值[Step步長]
循環(huán)體;
next
注意:循環(huán)參數(shù)中,i用于操縱循環(huán)次數(shù),step是步長使用前應(yīng)運(yùn)算好,結(jié) 尾必須有next不然程序會出錯(cuò)!
(2) do. .. while 語句格式:
Do { WhilelU 45、ntil }<條件>
語句塊
[Exit Do語句塊]
Loop
注意:do... while循環(huán)是用于操縱循環(huán)次數(shù)未知。
5. 循環(huán)操縱語句
在循環(huán)執(zhí)行到一定程度的時(shí)候,不期望它連續(xù)執(zhí)行,那么要使用循環(huán)操縱語 句,包括 continue 和 break0
(1) continue顯現(xiàn)時(shí),不執(zhí)行continue后的內(nèi)容,直截了當(dāng)躍過本次循環(huán),執(zhí) 行下一次循環(huán)。
(2) Break顯現(xiàn)時(shí),不執(zhí)行break后的內(nèi)容,直截了當(dāng)跳出循環(huán),執(zhí)行循環(huán)后的 語句。
2. 2. 7控件數(shù)組
控件數(shù)組是由一組具有共同名稱和相同類型的控件組成,數(shù)組中的每一個(gè)控 件共享同樣的事件,它能夠運(yùn)用控件 46、數(shù)組能夠再程序運(yùn)行時(shí)創(chuàng)建一個(gè)控件的多個(gè) 實(shí)例,并能專門好的控件在程序運(yùn)行時(shí)到底顯示多少個(gè)對象,利用for-next循環(huán) 結(jié)構(gòu),就能夠簡單地為控件數(shù)組的各個(gè)元素設(shè)置相同的屬性,同時(shí)它也能夠自約代 碼,增加可讀性,減少了內(nèi)存的開銷。控件數(shù)組能夠分為靜態(tài)數(shù)組及動態(tài)數(shù)組兩種。
3平差運(yùn)算差不多理論
3.1 條件平差
3.1.1 條件平差原理
設(shè)有r個(gè)平差值的線性條件方程:
A A A 、
q £, + % % + …+ 勺 4 = 0
A A A
44+44+…+4 4+% =。,
9 (3-1-1)
*
A A A
44 + 人 +…+ 3 + %=。.
式中,q,4, 47、…,=1, 2,…,n)為條件方程的系數(shù),兩,…,々)為條 件方程常數(shù)項(xiàng),系數(shù)和常數(shù)項(xiàng)隨不同平差問題取不同的值,它們與觀測值無關(guān)。 用£ =乙+『代入上式,可得:
回必+。2/+??? +《%+% =0 4匕+與嶺+???+勿匕? +嗎=0
9
(W +G% + ??? + 4匕】+Wr =0
(3-1-2)
式中,叫,叼,…,嗎為條件方程的閉合差,或稱不符值,即:
% = + a2G +... + anLn + a0
%=4£1+3+???+ 3+%
嗎='/+G4+??? + &〃+F 令:
4 %…%
4 b2 …bn
A 一 ? ? ? ?
T II ? ? 48、 ? ?
? ? ? ?
J r2 …G
那么13T-2)式為:
(3-1-3)
AV + W=0
同樣,(3T-1)式也能夠?qū)憺?
(3-1-4)
AL + Ao=0 f 3-1-5)
式中
A
-T 、=[4 % …次
〃 I n 1
(3-1-3)式的矩陣形式為:
W=AL + Ao (3-1-6)
由(3-1-5)式可知,AL +A 49、0的應(yīng)有值為零,因此閉合差等于觀測值減去其應(yīng) 有值。
按求條件極值的拉格朗日乘數(shù)法,設(shè)其乘數(shù)為K =[兒kh 1],稱為聯(lián) r 1
系數(shù)向量,組成函數(shù)
PV-2K\AV + W)
將。對V求一階導(dǎo)數(shù),并令其為零,得:
^- = 2VtP-2KtA = 0
dV
移頂,兩邊轉(zhuǎn)置,得:
PV = ArK
再用。一1左乘上式兩段,得改正數(shù)y的運(yùn)算公式為:
V = p-]ArK = QA, K (3-1-7)
上式稱為改正數(shù)方程。
將n個(gè)改正數(shù)方程(3-1-7)和r個(gè)條件方程(3-1-4)聯(lián)立求解,就能夠求 得一組唯獨(dú)的解:n個(gè)改正數(shù)和r個(gè)聯(lián)系數(shù)。為此,將(3-1-4)式和(3 50、-1-7) 式合稱為條件平差的基礎(chǔ)方程。明顯,有基礎(chǔ)方程解出的一組V,不僅能排除閉 合差,也必能滿足V'PVumin的要求。
解算基礎(chǔ)方程時(shí),是先將(3-1 -7)式代入(3-1-4)式,得
aKa/k+w = o
令:Nna=AP-]Ar,那么有
MM + w = °
稱為聯(lián)系數(shù)法方程,它是條件平差的法方程,簡稱法方程。因?yàn)榉ǚ匠滔禂?shù)陣是 滿秩方陣,由此可得聯(lián)系數(shù)”的唯獨(dú)解
K = -N;:W
從法方程中解出《后,將“值代入改正數(shù)方程(3-1-7),再求平差值L = L + V即
可。
3.1.2條件平差程序設(shè)計(jì)流程圖
51、
3. 2間接平差
3.2.1間接平差原理
間接平差確實(shí)是在最小二乘準(zhǔn)那么要求下求出誤差方程中的待定參數(shù)X ,在 數(shù)學(xué)中是求多元函數(shù)的極值問題。間接平差的函數(shù)模型為:
A A
L=BX+d
n 1 n i t \ n \
A
平差時(shí),一樣對參數(shù)X都要取近似值x0,令
A A
X=X0 + x
代入上式,并令
l = L-(BXQ +d) = L-I^
其中,〃=5X° + d為觀測值的近似值,因此/是觀測值與其 52、近似值之差,由此 可得誤差方程
A
V = Bx-l
設(shè)有n個(gè)觀測值的方程為:
A A A
4 + Vj =q X 1 + & X 2 + ? ? ? + f] X r + 4
A A A
L +%=% Xi +Z?)X2+…+ Xf + j — Am
9
*
A A A
Ln + = % Xi+a X2+???+乙 x,+4
令
A A
X j = X: + Xj (j = 1 ,2 ,…,t)?
/a,X; +4X; +???”;+4)(i = l ,2 ,?.?,n) 那么得誤差方程為:
A A
匕=43+ 4々+…+6(一( (' = 1,2,…, 53、n)
令:
匕二[匕刈…匕了 n 1
AAA A
X =[xi X2 …Xn]
i 1
/4 …/J
n 1
J ... LJ7
n \
4 =[44…dj n 1
xQ=[xf x;…x:)r
; 1
s 口 …C;F
n 1
可得平差值方程的矩陣形式:
A
V = Bx-l, l = L-(BX()+d) = L-^ (3-2-1)
A
按最小二乘原理,上式的X必須滿足V『PV = min的要求,因?yàn)閠個(gè)參數(shù)
為獨(dú)立量,故可按數(shù)學(xué)上求函數(shù)自由極值的方法,得:
A A
Ox dx
移項(xiàng),轉(zhuǎn)置后得:
BtPV = 0 (3-2-2)
A
54、以上所得(3-2-1)和(3-2-2)式中的待求量是八個(gè),和匕個(gè)X,而方程個(gè) 數(shù)也是〃九個(gè),有唯獨(dú)解,稱此兩式為間接平差的基礎(chǔ)方程。
解此基礎(chǔ)方程,一樣是將(3-2-1)式代入(3-2-2)式,以便先消去匕得:
BtPB x- BtPI = 0 (3-2-3)
令:
Nrk = BtPB , IV = BrPl Dn
上式可簡寫成
A
心 x-W =0 (3-2-4)
A
式中系數(shù)陣Nss為滿秩,即R(NG = f, x有唯獨(dú)解,上式稱為間接平差
的法方程。解之得:
A
X =
no
x = (BTPByxBTPl
A
將求出的x代入誤差方程(3-2-1),即 55、可求得改正數(shù)匕從而平差結(jié)果為:
A A A
L = L + V , X = X°+x
3. 2. 2間接平差程序設(shè)計(jì)流程圖
終止
3. 3附合導(dǎo)線平差運(yùn)算
圖3.1附合導(dǎo)線圖
3. 3.1單一附合導(dǎo)線平差原理
如圖一所示,在那個(gè)導(dǎo)線中有四個(gè)點(diǎn)、n-l個(gè)未知點(diǎn)、n+1個(gè)水平角觀測值 和n條邊長觀測值,總觀測值數(shù)為2n+lo從圖中能夠分析,要確定一個(gè)未知點(diǎn) 的坐標(biāo),必須測一條導(dǎo)線邊和一個(gè)水平角,即需要兩個(gè)觀測值;要確定全部nT 個(gè)未知點(diǎn),那么需觀測n-1個(gè)導(dǎo)線邊和n-l個(gè)水平角,即必要觀測值數(shù)t = 2n -2;那么余外觀測個(gè)數(shù)r=(2n +1) - t = 3。也確實(shí) 56、是說,在單一附合導(dǎo)線 中,只有三個(gè)條件方程。下面討論其條件方程式及改正數(shù)條件方程式的寫法。
設(shè)AB邊方位角值為TAB=TO, CD邊方位角值為TCD、運(yùn)算值為Tn+1, B點(diǎn) 坐標(biāo)的值為(右,%)或者(xl, yl), C點(diǎn)坐標(biāo)的值為(冗,無)、運(yùn)算值為(xn+1, yn+1)。
三個(gè)條件中,有一個(gè)方位角附合條件、兩個(gè)坐標(biāo)附合條件。
方位角附合條件:從起始方位角推算至終邊的方位角平差值應(yīng)等于其值,即:
亍n+1 -Tcd =。 (3-3-1)
縱橫坐標(biāo)附合條件:從起始點(diǎn)推算至終點(diǎn)所得到的坐標(biāo)平差值應(yīng)與終點(diǎn)的坐 標(biāo)值相等,
即:
力+1 - 冗7 = 0 (3-3-2)
(3-3 57、-3)
(1)方位角附合條件式
4 + [Air ±(〃 +1). 180° = 4 + 他 + T ± (〃 +1) ? 180° 那么(3-3-1)式可寫為
± (〃 +1) ? 180?!?Tcd= 0
整理得:
[⑦]產(chǎn)—叼=。
(3-3-4)
其中
叫,=_(,+ 血± 5 +1). 180。- Tcd )
(2)縱坐標(biāo)附合條件式
終點(diǎn)c坐標(biāo)平差值表示為
?=當(dāng)+?。荩?(3-3-5)
而第i邊的坐標(biāo)增量為
饃=& COS Ti ( 3-3-6)
式中:
si= S, + %.
£ = 4 j ± i ? 180。= " + 吃 + % j ± 58、i ? 180。
二 [,J+〔4];+〃±i」80。
其中,Ti是第i邊的近似坐標(biāo)方位角
1=皿1+4±'.18?!?(3-3-7)
那么(3-3-6)式可表示為
Ar,. = @ + ) cos卬巧];+ 7;)
上式按泰勒級數(shù)展開,取至一次項(xiàng),得
人 Ay
M = Arf. + cos 7; ?氣——[']; P (3-3-8)
其中,M=S,8s7;,為由觀測值運(yùn)算出的近似坐標(biāo)增量。
將(3-3-8)式代入(3-3-5)式,并按凡合并同類項(xiàng),得
% =/ + 州 +COS7;…s ——7^11 =1e +[cos7;?為』- -[(>;->;)vA]j - p J 59、l P
將上式代入(3-3-2)式,整理得
[cos1 ?%,]:—,[(£ 一上)〃]:+七出—% =0
上式即為縱坐標(biāo)條件方程式,也可寫為統(tǒng)一形式:
[cosT; . vs ], - y )與]:—% = 0
(3-3-9)
(3-3-10)
(3-3-11)
(3-3-12)
p
%=一(九〃+1 -元c)
⑶橫坐標(biāo)附合條件式
同理,可寫出橫坐標(biāo)條件式
[sin 7; ?. ]: + . 1+「/)*-4 = 0
Wy = —(%+「%)
為使運(yùn)算方便,保證精度,在實(shí)際運(yùn)算中,S、x、y常以m為單位,w、匕、
以cm為單位,
那么f 3-3-9)和f 60、3-3~11)寫為
[cos小 vSf ];' - : [(++] - V):一嗎=0
(3-3-13)
(3-3-14)
V/ \J Vz J
[sinT; ?%」:+- J -[(xZT+1 _.)〃]"% =0
綜上所述,單一附合導(dǎo)線的平差運(yùn)算的差不多程序是:
1)運(yùn)算各邊近似方位角Ti和各點(diǎn)的近似坐標(biāo)增量值A(chǔ)xi. Ayi;
2)參照(3-3-4 )寫出方位角條件式,參照(3-3-9)、( 3-3-10)、(3-3-11)4 3-3-12) 或者(3-3-13)、(3-3-14)寫出縱橫坐標(biāo)條件方程式;
3)按照條件平差運(yùn)算的一樣程序,運(yùn)算最或是值。
3. 3. 2 61、單一附合導(dǎo)線程序設(shè)計(jì)流程圖
圖在下一頁
輸入觀測數(shù)據(jù)
4 平差軟件界面設(shè)計(jì)
4.1平差軟件整體展現(xiàn)
4.1.1登陸界面
圖4.1平差軟件登錄界而圖
為了方便用戶使用和儲存用戶隱私,特做了平差軟件的登陸窗口。只有賬號 密碼正確才能進(jìn)入,使用軟件。而注冊和找回密碼用到數(shù)據(jù)庫的知識,需用VB 和數(shù)據(jù)庫(能夠是SQL數(shù)據(jù)庫,也能夠是access數(shù)據(jù)庫)聯(lián)合開發(fā)。因此了, 由于時(shí)刻關(guān)系,注冊和找回密碼功能還沒開發(fā),以待時(shí)刻充裕時(shí)再進(jìn)行開發(fā)。
62、圖4.2平差軟件登錄界面圖
4. 1.2平差軟件主界面
6亍差軟性主界面
圖4.3平差軟件要緊界而圖
左邊按鈕為平差功能,有水準(zhǔn)網(wǎng)間接平差,附和導(dǎo)線平差,水準(zhǔn)網(wǎng)的間接平 差,閉合導(dǎo)線平差。最后一個(gè)為誤差橢圓,用來檢測各導(dǎo)線的誤差精度。中間的 是坐標(biāo)系統(tǒng),用來顯示所觀測導(dǎo)線網(wǎng),看輸入的導(dǎo)線網(wǎng)與實(shí)測的導(dǎo)線網(wǎng)是否一樣, 能夠及時(shí)糾錯(cuò)。因此還能夠顯示導(dǎo)線網(wǎng)中的誤差橢圓。
4. 1.3水準(zhǔn)網(wǎng)間接平差
口水在利但干妥
一別識明
息點(diǎn)個(gè)數(shù) 廠
已知點(diǎn)個(gè)致 廠 乙瀏水港路甄條教廠
魯普文
課本算M清
起#點(diǎn)號
終點(diǎn)點(diǎn)號
木淮珞 (k.
現(xiàn)洌在著 3
改正我 (tnm) 63、
w基位(Q
T
改正數(shù)計(jì)算
干去.值計(jì)算
輸 64、出數(shù)據(jù)
圖4.4水準(zhǔn)網(wǎng)間接平差要緊界面圖
上圖為水準(zhǔn)網(wǎng)間接平差主界面,只要鼠標(biāo)點(diǎn)擊主界面中的水準(zhǔn)網(wǎng)間接平差按 鈕就能進(jìn)入該界面。該界面中右邊為輸入觀測數(shù)據(jù)。此水準(zhǔn)網(wǎng)間接平差能實(shí)現(xiàn)的 功能是進(jìn)行水準(zhǔn)網(wǎng)間接平差運(yùn)算(改正數(shù)跟平差值運(yùn)算),此外還設(shè)計(jì)了幾個(gè)有 用功能,如對平差后的結(jié)果進(jìn)行輸出(輸出的格式為txt文本格式),對數(shù)據(jù)進(jìn) 行清空,方便第二次輸入。還設(shè)有返回主界面的功能,進(jìn)行其他功能的轉(zhuǎn)化。因 此了還開發(fā)了如查看系數(shù)矩陣,法方程等功能
4.1.4附合導(dǎo)線平差
圖4.5附合導(dǎo)線平差界面圖
和水準(zhǔn)網(wǎng)間接平差一樣,附合導(dǎo)線網(wǎng)設(shè)計(jì)的功能有改正數(shù)平差值的運(yùn)算,還 有其他一些有 65、用的功能。由于此次的時(shí)刻比較短,只開了這兩個(gè)平差程序,其他 的以待后面開發(fā)。
4. 2平差軟件界面設(shè)計(jì)
VB中的界面設(shè)計(jì)是實(shí)現(xiàn)可視化,面向?qū)ο蟮闹匾緩剑覀冋f的VB界面設(shè) 計(jì)事實(shí)上確實(shí)是Visual Basic編程語言中的(GUI)。軟件設(shè)計(jì),除了能實(shí)現(xiàn)所 編功能外,界面的設(shè)計(jì)也尤為重要。好的界面設(shè)計(jì)能使用戶易明白,并能高效的 輸入數(shù)據(jù),提高工作效率。
4. 2. 1 Visual Basic(GUI)簡介
Visual Basic (GUI)是用戶與運(yùn)算機(jī)程序之間的交互方式,是用戶與運(yùn)算 機(jī)進(jìn)行信息交流的方式。通常,多是依照悅目的結(jié)構(gòu)和用戶界面功能的有效性來選擇運(yùn)算機(jī)或程序。圖形 66、用戶界面或GUI是包含圖形對象,如:窗口、圖標(biāo)、菜 單和文本的用戶界面。以某種方式選擇或激活這些對象,通常引起動作或發(fā)生 變化。最常見的激活方法是用鼠標(biāo)或其它點(diǎn)擊設(shè)備去操縱屏幕上的鼠標(biāo)指針的運(yùn) 動。按下鼠標(biāo)按鈕,標(biāo)志著對象的選擇或其它動作。
4. 2. 2界面設(shè)計(jì)
打開VB編程軟件,然后點(diǎn)擊工具箱中控件,然后在主體窗口進(jìn)行合理的布 置,這布置事實(shí)上跟 ''畫圖〃差不多,但要以畫得合理有用為準(zhǔn)。
南 jlTse! - Microson Visual tsasic [mvti - U-桂工-borml (卜 orm)j
E文件但能蝮⑥現(xiàn)囪(Y)工程(£)格式◎調(diào)試Q)運(yùn)行? 亙詢。
c=j iFg
O半差蟻件
室碼
F0
日
qj 2d
O
■歡迎使用華差簌件
? ? ? ?
注明
找回空碼
取消
圖4.6界面設(shè)計(jì)演示圖
如上圖是設(shè)計(jì)本軟件時(shí)進(jìn)行textbox的設(shè)計(jì),作用是接收用戶輸入的信息, 還有其他比如label標(biāo)簽控件,command按鈕控件,此處不一一舉例,能夠參照 VB編程設(shè)計(jì)書。本軟件設(shè)計(jì)時(shí),采納四個(gè)主窗體集成,使得各功能在一個(gè)軟件 中同
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 外國文學(xué)論文寫作教學(xué)內(nèi)容怎樣選擇外國文學(xué)的題目市公開課金獎(jiǎng)市賽課一等獎(jiǎng)?wù)n件
- 新生兒的靜脈營養(yǎng)的配制及護(hù)理
- 銷售員基本知識培訓(xùn)
- 濕法煉鋅和火法煉鋅課件
- 西塞山懷古課件
- 蘇教版小學(xué)六年級科學(xué)下冊達(dá)爾文與他的“進(jìn)化論”課件
- 初中八年級英語下冊《Unit8Have_you_read_Treasure_Island_yet_sectionA》ppt課件(人教版)
- 科學(xué)理財(cái)合理利用理財(cái)知識分享課件
- 有效排痰的方法概述課件
- 六年級上英語Unit-3-My-weekend-plan第3課時(shí)課件
- 公開課朗誦培訓(xùn)課件
- 高級體系結(jié)構(gòu)期末考試課后習(xí)題匯總
- 思與辨-NSCLC腦轉(zhuǎn)移治療選擇ppt課件
- 全國統(tǒng)考2022版高考數(shù)學(xué)大一輪備考復(fù)習(xí)第7章不等式第1講不等關(guān)系與一元二次不等式課件文
- 施工企業(yè)宣傳冊課件