C#高斯換帶解析課件_第1頁
C#高斯換帶解析課件_第2頁
C#高斯換帶解析課件_第3頁
C#高斯換帶解析課件_第4頁
C#高斯換帶解析課件_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

高斯投影換帶計算專業(yè):測繪工程班級:測繪2班高斯投影換帶計算1高斯投影換帶計算1.設(shè)計內(nèi)容

1.1設(shè)計意義

1.2基礎(chǔ)理論

1.3數(shù)據(jù)流程圖

1.4詳細設(shè)計2.功能實現(xiàn)2.1關(guān)鍵技術(shù)和難點2.2程序使用說明書

3.總結(jié)高斯投影換帶計算1.設(shè)計內(nèi)容21.設(shè)計內(nèi)容1.1設(shè)計意義

在實際測量工作中,我們常常遇到坐標(biāo)不統(tǒng)一的情況,為了計算簡便,把不同形式的坐標(biāo)轉(zhuǎn)換成我們所需的坐標(biāo),為我們的工程服務(wù),經(jīng)常需要進行高斯投影正算、反算、坐標(biāo)換帶和子午線收斂角的計算工作。為此,我們編寫了這一程序設(shè)計,希望能使以后的轉(zhuǎn)換工作更加簡便。本軟件主要應(yīng)用相關(guān)的轉(zhuǎn)換公式,采用C#編程可隨時隨地實現(xiàn)任何參考橢球體下高斯坐標(biāo)轉(zhuǎn)換與大地坐標(biāo)之間的正反算和換帶計算,達到高斯平面坐標(biāo)轉(zhuǎn)換的目的。本文所編程序的特點是,操作簡單.輸出簡捷、結(jié)果完整,不需要另加輔助內(nèi)容。1.設(shè)計內(nèi)容1.1設(shè)計意義3高斯投影雖然保證了角度投影前后沒有變形,但其長度變形仍然存在,并且距離中央子午線愈遠,長度變形愈大。為了限制高斯投影的長度變形,將橢球面按一定經(jīng)度的子午線劃分成不同的投影帶,把投影范圍限制在中央子午線東西兩側(cè)一定的狹長地帶內(nèi)分別進行投影。由于中央子午線的經(jīng)度不同,使得橢球面上統(tǒng)一的大地坐標(biāo)系,分割成為各帶獨立的平面坐標(biāo)系。為了得到統(tǒng)一的坐標(biāo)系,必須進行換帶計算。高斯投影雖然保證了角度投影前后沒有變形,但其長度變形仍然存在41.2基礎(chǔ)理論利用高斯正反算間接換帶平面坐標(biāo)大地坐標(biāo)平面坐標(biāo)把橢球面上的大地坐標(biāo)作為過渡坐標(biāo):這種方法,理論上最簡明嚴(yán)密,精度最高,通用性最強。不僅適用于3°-3°帶以及6°-3°帶互相之間的鄰帶坐標(biāo)換算,且適用于任意帶之間的坐標(biāo)換算。雖計算量稍大,但由于計算機的普及和本法的通用性及計算的高精度,它自然便成為坐標(biāo)鄰帶換算中最基本的方法。反算正算1.2基礎(chǔ)理論平面坐標(biāo)大地坐標(biāo)平面坐標(biāo)把橢球面上的大地坐標(biāo)作5計算和數(shù)據(jù)模型正算是指:由大地坐標(biāo)(L,B)求得高斯平面坐標(biāo)(x,y)的過程。反算是指:由高斯平面坐標(biāo)(x,y)求得大地坐標(biāo)(L,B)的過程。正算:高斯投影必須滿足的三個條件:(1),中央子午線投影后為直線。(2),中央子午線投影后長度不變。(3),投影具有正性性質(zhì),即正性投影條件。由第一個條件可知,中央子午線東西兩側(cè)的投影必然對稱于中央子午線。設(shè)在托球面上有P1,P2,且對稱于中央子午線。其大地坐標(biāo)為(l,B),(-l,B)則投影后的平面坐標(biāo)一定為P1·(x,y),P2·(x,-y).由第二個條件可知,位于中央子午線上的點,投影后的縱坐標(biāo)x應(yīng)該等于投影前從赤道量至該點的子午弧長。計算和數(shù)據(jù)模型正算是指:由大地坐標(biāo)(L,B)求得高斯平面坐標(biāo)6反算:在高斯投影坐標(biāo)反算時,原面是高斯平面,投影面是橢球面,則有如下的投影方程:則其的三個條件:(1)x坐標(biāo)軸投影成中央子午線,是投影的對稱軸;(2)x軸上的長度投影保持不變;(3)正性投影條件。反算:在高斯投影坐標(biāo)反算時,原面是高斯平面,投影面是橢球面,7高斯反算公式(克氏橢球)高斯反算公式(克氏橢球)8高斯反算公式(IAG橢球)高斯反算公式(IAG橢球)9高斯正算公式:(克氏橢球)高斯正算公式:(克氏橢球)10高斯正算公式:(IAG橢球)高斯正算公式:(IAG橢球)111.3數(shù)據(jù)流程圖1.3數(shù)據(jù)流程圖121.4詳細設(shè)計主要研究內(nèi)容是利用C#軟件把高斯換帶計算從手算到實現(xiàn)電算的一個過程。主要分為四個界面(1)歡迎界面

主要結(jié)構(gòu)過程名功能與作用進入功能label3_Click歡迎界面進入主頁面(2)主程序界面

主要結(jié)構(gòu)過程名功能與作用讀入函數(shù)publicvoidReadData()讀入數(shù)據(jù)反算函數(shù)publicvoidFS()高斯反算正算函數(shù)publicvoidZS()高斯正算弧度轉(zhuǎn)角度函數(shù)redian_a(doublealfa)弧度轉(zhuǎn)角度角度轉(zhuǎn)弧度函數(shù)angle_r(doublealfa)角度轉(zhuǎn)弧度輸出函數(shù)publicvoidWriteData()輸出數(shù)據(jù)計算button1_Click進行換帶計算重置button2_Click_1恢復(fù)原狀態(tài)1.4詳細設(shè)計主要結(jié)構(gòu)過程名功能與作用進入功能label3_13(2)主程序界面

主要結(jié)構(gòu)過程名功能與作用改變屬性radioButton3_CheckedChanged點擊3-3換帶時改變textbox的屬性改變屬性radioButton4_CheckedChanged點擊3-3換帶時改變textbox的屬性改變屬性radioButton5_CheckedChanged點擊3-3換帶時改變textbox的屬性帶號與中央子午線轉(zhuǎn)換帶號與中央子午線轉(zhuǎn)換ToolStripMenuItem_Click進入帶號與中央子午線轉(zhuǎn)換窗體弧度角度轉(zhuǎn)換弧度角度轉(zhuǎn)換ToolStripMenuItem_Click進入弧度角度轉(zhuǎn)換窗體關(guān)閉Form1_FormClosing關(guān)閉整個程序(2)主程序界面主要結(jié)構(gòu)過程名功能與作用改變屬性radioB14主要結(jié)構(gòu)過程名功能與作用求中央子午線button1_Click由帶號求中央子午線求帶號button2_Click中央子午線由求帶號關(guān)閉Form3_FormClosing關(guān)閉該窗體(3)帶號與中央子午線轉(zhuǎn)換界面

(4)弧度角度轉(zhuǎn)換界面

主要結(jié)構(gòu)過程名功能與作用角轉(zhuǎn)弧button1_Click角度轉(zhuǎn)弧度弧轉(zhuǎn)角button2_Click弧度轉(zhuǎn)角度關(guān)閉Form3_FormClosing關(guān)閉該窗體主要結(jié)構(gòu)過程名功能與作用求中央子午線button1_Clic152.功能實現(xiàn)2.1關(guān)鍵技術(shù)和難點///<summary>///反算函數(shù)

///</summary>publicvoidFS(){

///克氏橢球反算

if(radioButton1.Checked==true){β=x/6367558.4969;Bf=β+(50221746+(293622+(2350+22*Math.Pow(Math.Cos(β),2))*Math.Pow(Math.Cos(β),2))*Math.Pow(Math.Cos(β),2))*Math.Pow(10,-10)*Math.Sin(β)*Math.Cos(β);Nf=6399698.902-(21562.267-(108.973-0.612*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);Z=y/(Nf*Math.Cos(Bf));b2=(0.5+0.003369*Math.Pow(Math.Cos(Bf),2))*Math.Sin(Bf)*Math.Cos(Bf);b3=0.333333-(0.166667-0.001123*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);b4=0.25+(0.16161+0.00562*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);b5=0.2-(0.1667-0.0088*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);B=Bf-(1-(b4-0.12*Z*Z)*Z*Z)*Z*Z*b2;B1=redian_a(B);l=(1-(b3-b5*Z*Z)*Z*Z)*Z;L=L01+l;L1=redian_a(L);}

2.功能實現(xiàn)2.1關(guān)鍵技術(shù)和難點16///IAG橢球反算

else{β=x/6367452.1328;Bf=β+(50228976+(293697+(2383+22*Math.Pow(Math.Cos(β),2))*Math.Pow(Math.Cos(β),2))*Math.Pow(Math.Cos(β),2))*Math.Pow(10,-10)*Math.Sin(β)*Math.Cos(β);Nf=6399596.652-(21565.045-(108.996-0.603*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);Z=y/(Nf*Math.Cos(Bf));b2=(0.5+0.00336975*Math.Pow(Math.Cos(Bf),2))*Math.Sin(Bf)*Math.Cos(Bf);b3=0.3333333-(0.1666667-0.001123*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);b4=0.25+(0.161612+0.005617*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);b5=0.2-(0.16667-0.00878*Math.Pow(Math.Cos(Bf),2))*Math.Pow(Math.Cos(Bf),2);B=Bf-(1-(b4-0.147*Z*Z)*Z*Z)*Z*Z*b2;B1=redian_a(B);l=(1-(b3-b5*Z*Z)*Z*Z)*Z;L=(L01+l);L1=redian_a(L);}}///IAG橢球反算17

///<summary>

///正算函數(shù)

///</summary>publicvoidZS(){

///克氏橢球

if(radioButton1.Checked==true){///<summary>///3-3正算函數(shù)

///</summary>if(radioButton3.Checked==true){if(MessageBox.Show("您確定向右換帶嗎?","確定向右換帶嗎?",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes){l1=l-3*Math.PI/180;}else{l1=l+3*Math.PI/180;}}///<summary>

///<summary>18///3-6正算函數(shù)

///</summary>elseif(radioButton4.Checked==true){if(MessageBox.Show("您確定向右換帶嗎?","確定向右換帶嗎?",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes){l1=l-6*Math.PI/180;}else{l1=l+3*Math.PI/180;}}///<summary>///任意正算函數(shù)

///</summary>elseif(radioButton5.Checked==true){l1=L-L02;}///3-6正算函數(shù)19N=6399698.902-(21562.267-(108.973-0.612*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B);a0=32140.404-(135.3302-(0.7092-0.004*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B);a4=(0.25+0.00252*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B)-0.04166;a6=(0.166*Math.Cos(B)*Math.Cos(B)-0.084)*Math.Cos(B)*Math.Cos(B);a3=(0.3333333+0.001123*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B)-0.1666667;a5=0.0083-(0.1667-(0.1968+0.004*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B);X=6367558.4969*B-(a0-(0.5+(a4+a6*l1*l1)*l1*l1)*l1*l1*N)*Math.Sin(B)*Math.Cos(B);Y=(1+(a3+a5*l1*l1)*l1*l1)*l1*N*Math.Cos(B);}

N=6399698.902-(21562.267-20///IAG橢球

else{///<summary>///3-3正算函數(shù)

///</summary>if(radioButton3.Checked==true){if(MessageBox.Show("您確定向右換帶嗎?","確定向右換帶嗎?",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes){l1=l-3*Math.PI/180;}else{l1=l+3*Math.PI/180;}}///<summary>///3-6正算函數(shù)

///</summary>elseif(radioButton4.Checked==true){if(MessageBox.Show("您確定向右換帶嗎?","確定向右換帶嗎?",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes){l1=l-6*Math.PI/180;}else{l1=l+3*Math.PI/180;}}

///IAG橢球21///<summary>///任意正算函數(shù)

///</summary>elseif(radioButton5.Checked==true){l1=L-L02;}N=6399596.652-(21565.045-(108.996-0.603*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B);a0=32144.5189-(135.3646-(0.7034-0.0041*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B);a4=(0.25+0.00253*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B)-0.04167;a6=(0.167*Math.Cos(B)*Math.Cos(B)-0.084)*Math.Cos(B)*Math.Cos(B);a3=(0.3333333+0.001123*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Math.Cos(B)-0.1666667;a5=0.00878-(0.1702-0.20382*Math.Cos(B)*Math.Cos(B))*Math.Cos(B)*Ma

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論