• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于JavaGUI編寫簡易測繪計算器

      2019-06-29 15:32:00穆傳周王佳帥馮德義
      科學(xué)與財富 2019年34期

      穆傳周 王佳帥 馮德義

      摘 要:作為測繪工程專業(yè)的本科生,測量、繪圖、計算是三大基本功。在這三個當中,測量數(shù)據(jù)計算相對比較繁瑣,也是十分重要的部分,因為一串數(shù)據(jù)就是一個大型工程根基,如果數(shù)據(jù)錯誤,那么造成的損失不言而喻?;谶@一點,相關(guān)人員開發(fā)了多款適用于測繪計算的計算器,為測繪工作者的數(shù)據(jù)計算帶來了福音,減輕了很大的工作量。

      關(guān)鍵詞:Java GUI編程;測繪計算器;角度測量;高差測量

      引言:

      市面上的計算器都是工藝成品,那么如何通過計算機程序開發(fā)出一款計算器?基于Java GUI開發(fā)的適用于測繪行業(yè)的計算器相對比較繁瑣,不僅僅是簡單的加減乘除。由于測繪數(shù)據(jù)[1]所涉及到的范圍比較廣,其中包括角度計算、三角函數(shù)計算、對數(shù)計算、冪次方、弧度制轉(zhuǎn)化等等,但是本篇文章只涉及簡單的角度計算,方位角計算和高差計算。

      1.角度測量計算器

      目前來說,市面上關(guān)于測繪的計算器各式各樣,如CASIO(卡西歐)、得力DELI、TI(德州儀器)、SHARP(夏普)、Canon (佳能)、COMIX(齊心)等。他們的功能都很全面,本部分只對計算器的角度計算開發(fā)功能進行說明,首先我們對計算器適用范圍進行選擇,選擇我們需要的角度測量。

      對于窗體這部分內(nèi)容,不再進行贅述。主要談?wù)勅绾螌崿F(xiàn)角度計算。其實,測繪中的角度計算和我們?nèi)粘I钪械氖M制計算有相似之處,相似之處在于他們的計算過程都是些數(shù)值加減運算,這個比較簡單。不同之處就是角度計算中度分秒的轉(zhuǎn)化問題,以及度分秒之間的計算順序和計算方法。舉個簡單的例子,如果我們第一次測量一個水平角,為了方便通常將儀器進行置零處理,此時記錄第一個角度值為0°0000,轉(zhuǎn)動儀器測得第二個水平角值為58°2536,這個時候角差我們就可以很方便計算出來,就是第二個角的讀數(shù),如果此時再測第三個水平角的話,可能計算起來就沒有那么方便了,假設(shè)讀數(shù)第三個角為98°4924,此時計算第二個角的讀數(shù)則為98°4924-58°2536=73°2348。這其中計算需要注意的第一個為順序問題為先從秒開始計算,然后算分最后算度,而不是整體數(shù)值計。其次,我們需要明白度分秒的轉(zhuǎn)換1°=60,1=60,這個和我們正常的十進制計算還是有區(qū)別的。

      基于以上兩點對如何實現(xiàn)進行深入地解釋說明。首先,對計算器的布局進行設(shè)計,通過組合工具完成計算器的基本操作。下面進行兩步,第一設(shè)計運算順序,第二設(shè)計計算方法。計算順序,首先保證輸入的數(shù)據(jù)正確,最主要的就是分和秒需要小于60,這里只需要使用if進行條件判斷即可。其次保證我們得先從秒開始計算,然后計算分,最后進行度的加減運算。這一步可以使用數(shù)組來存儲我們測得的數(shù)據(jù),然后利用for循環(huán)從存儲數(shù)組的最后一個數(shù)來執(zhí)行運算操作,依次往下進行執(zhí)行分和度的計算。那么,在角度測量的過程中,除了測簡單的水平角,有時還需要計算方位角,那么方位角的觀測也是可以用程序操作來實現(xiàn)計算程序,具體如下。

      首先定義一個方位角大小,然后根據(jù)其他方位角的坐標和方向值,進行依次計算,例如規(guī)定αab = 15°,∠bap = 90°,∠apq = 127°,∠pqh = 131°,求qh的方位角。知道αab = 15°,∠bap = 90°即可算出直線ap的方位角為105°,此時需要求pq的方位角,但是此時我們知道ap和q不是共起點,這是需要我們ap方位角加180°,變成共起點的方位角,算的pa的方位角為285°,在進行qh的方位角計算,這個時候也需要對pq方位角進行轉(zhuǎn)化,轉(zhuǎn)化成與qh是共起點的,最終算得的qh方位角大小為101°,通過以上說明,我們需要將文字變成代碼的形式執(zhí)行。在這個程序當中需要進行一個while進行判斷,如果兩條直線是共起點,那么則進行相應(yīng)的角度加減運算,如果兩條直線不是共起點,那么他們的方位角需要分情況進行討論,如果這個角是大于180°,轉(zhuǎn)化成共起點方位角時需要減去180°;如果這個叫小于180°,則需要加上180°,這部分通過while的重復(fù)判斷執(zhí)行最終算出集結(jié)果。

      2.高差測量計算器

      在使用計算器進行高差測量計算時,我們需要選擇高差測量。相對于前面的角度測量,高差測量相對來說要簡單得多,只需要簡單的操作即可。在測量過程中可能會有超限誤差的存在[2],普通的計算器是無法識別這種錯誤,但是基于Java編程開發(fā)的計算器可以起到提醒作用,操作如下。

      我們選擇高差測量之后,就需要進行對限差進行規(guī)定。這里只需要簡單的定義即可,定義限差之后,只需要對我們算出的數(shù)值進行一個判斷。這里簡單的以四等水準測量為例,進行操作說明。首先,既然四等水準測量,那么我們就可以得到閉合容許差值為6*√4=12mm,紅黑面的讀數(shù)之差不大于3mm。算出容許差和限差之后,我們定義一個數(shù)int x = 12,int y = 3;然后進行其他讀數(shù)。讀的的其他黑紅面數(shù)據(jù)為2198, 6888;1600,6388; 我們通過計算發(fā)現(xiàn),紅黑面的差值一個是-3,一個是-1,都在允許范圍之內(nèi)(小于3mm),這個時候計算器會正常運行,不出錯誤。如多說計算結(jié)果出錯了,超出了限差,那么此時計算器就會提示數(shù)據(jù)出錯。這些都是一些簡單的小操作,只是對數(shù)據(jù)進行簡單的加減操作和數(shù)據(jù)結(jié)果進行判斷選擇,避免計算錯誤的出現(xiàn)。

      3.結(jié)語

      通過簡單的案例說明,由此解釋編程給我們帶來的便捷,可能通過以上簡單程序不足以說明程序優(yōu)于人工,但是當我們遇到大的工程或者繁瑣計算時,所設(shè)計的計算還是十分方便的。在方位角的計算程序中,while選擇就減少很多不必要的麻煩,自動判斷角度執(zhí)行加減變化還是不變??傊?,通過Java GUI編寫的簡易測量計算器為我們的計算帶來很大便捷。

      參考文獻:

      [1]張龍. 網(wǎng)絡(luò)資源測繪數(shù)據(jù)表達與分析技術(shù)研究[D].戰(zhàn)略支援部隊信息工程大學(xué),2018.

      [2]溫浩興,許謙,王娜.南山26米射電望遠鏡軌道高差測量及其對指向精度的影響[J].天文研究與技術(shù),2019,16(02):158-166.

      蒙城县| 收藏| 沙田区| 蓬安县| 昌都县| 北宁市| 通化市| 巴彦淖尔市| 新田县| 潜山县| 饶平县| 平远县| 顺平县| 德州市| 奉新县| 石渠县| 外汇| 弋阳县| 青阳县| 长汀县| 湛江市| 巧家县| 拉萨市| 永靖县| 邯郸市| 镇康县| 祁东县| 辽阳市| 宝丰县| 安塞县| 晴隆县| 祁连县| 化隆| 绥棱县| 西乌珠穆沁旗| 鲁甸县| 凤台县| 土默特右旗| 西平县| 高安市| 萨迦县|