毛片在线视频观看,一级日韩免费大片,在线网站黄色,澳门在线高清一级毛片

薈聚奇文、博采眾長(zhǎng)、見(jiàn)賢思齊
當(dāng)前位置:公文素材庫(kù) > 計(jì)劃總結(jié) > 工作總結(jié) > 平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié)

平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié)

網(wǎng)站:公文素材庫(kù) | 時(shí)間:2019-05-26 21:08:55 | 移動(dòng)端:平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié)

平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié)

《工程測(cè)量2》實(shí)訓(xùn)總結(jié)

轉(zhuǎn)眼間一周的工程測(cè)量實(shí)訓(xùn)就結(jié)束啦!從這周實(shí)習(xí)的日子中,我從中得到很

多更寶貴的東西:首先,通過(guò)實(shí)習(xí),讓我發(fā)現(xiàn)我在平時(shí)學(xué)習(xí)中存在的很多知識(shí)漏洞。課本上介紹儀器使用的知識(shí)都比較抽象,到了真正實(shí)踐中的時(shí)候,我們未能很好把書(shū)本知識(shí)應(yīng)用到實(shí)踐中,還需要老師再次進(jìn)行指導(dǎo)。在近距離的接觸這些實(shí)物,能我更牢固的掌握相關(guān)的知識(shí)點(diǎn);也能令我提高對(duì)儀器的操作的熟練、精準(zhǔn)程度(比如能夠迅速對(duì)中整平)。

其次,通過(guò)這次實(shí)訓(xùn),有利于培養(yǎng)我做事嚴(yán)謹(jǐn)、認(rèn)真、不畏艱難困苦的作風(fēng)。不論是對(duì)中整平時(shí)的重復(fù)精確瞄準(zhǔn)還是在放樣計(jì)算時(shí)反復(fù)檢驗(yàn)計(jì)算數(shù)據(jù)(以確保放樣時(shí)的原數(shù)據(jù)正確),每個(gè)步驟都盡量做到腳踏實(shí)地、一絲不茍,使誤差盡可能的減小,及時(shí)發(fā)現(xiàn)錯(cuò)誤及時(shí)檢查;不論外界的環(huán)境的惡劣,克服一下就算不了什么;正確面對(duì)困難,學(xué)會(huì)靜下來(lái)耐心的思考分析問(wèn)題,能夠獨(dú)立借助書(shū)本找出解決途徑。做事要又負(fù)責(zé)的態(tài)度,若因?yàn)樽约憾斐闪隋e(cuò)誤要主動(dòng)承擔(dān)并積極補(bǔ)救。

第三,通過(guò)實(shí)習(xí)對(duì)培養(yǎng)我們團(tuán)隊(duì)協(xié)作精神有促進(jìn)作用。它增進(jìn)了同學(xué)們之間的交流和團(tuán)結(jié),互幫互補(bǔ),分工合作,共同面對(duì)、解決困難,共同尋求如何更快更好地完成任務(wù)的方法,提高小組工作效率,確保進(jìn)度的完成。

這次測(cè)量?jī)x器的使用和實(shí)地的測(cè)量實(shí)訓(xùn)工作的開(kāi)展,讓我們更直觀(guān)接觸到了土木工程測(cè)量這個(gè)學(xué)科,也為我們今后走上工作崗位后,更好更快地使用儀器、控制測(cè)量發(fā)放奠定了堅(jiān)實(shí)的基礎(chǔ)。大學(xué)生成長(zhǎng),就要勤于實(shí)踐,將所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合一起,在實(shí)踐中繼續(xù)學(xué)習(xí),不斷總結(jié),逐步完善,有所創(chuàng)新,并在實(shí)踐中提高自己由知識(shí)、能力、智慧等因素融合成的綜合素質(zhì)和能力。以后我會(huì)珍惜每次的實(shí)習(xí)機(jī)會(huì),多去挖掘課堂上無(wú)法獲及的東西,為自己事業(yè)的成功打下良好的基礎(chǔ)。

這周的測(cè)量實(shí)習(xí)結(jié)束了,雖然開(kāi)始時(shí)大家都感到好累,儀器有一小點(diǎn)兒的損壞,但看到我們的收獲我們大家還是很高興的。我覺(jué)得自己學(xué)到了很多的東西。對(duì)以前零零碎碎學(xué)的測(cè)量知識(shí)有了綜合應(yīng)用的機(jī)會(huì)。具體實(shí)訓(xùn)內(nèi)容如下:一、每組配備的儀器和工具

全站儀1臺(tái),對(duì)中桿1個(gè),腳架2個(gè),基座1個(gè),棱鏡1個(gè),鋼尺2把。有關(guān)記錄手簿、計(jì)算紙,橡皮及鉛筆等自備。(儀器要好好的保管)二、建立施工平面控制網(wǎng)和高程控制網(wǎng)

在測(cè)區(qū)實(shí)地踏勘,布設(shè)一條三級(jí)閉合導(dǎo)線(xiàn),經(jīng)過(guò)觀(guān)測(cè)、計(jì)算獲得控制點(diǎn)平面坐標(biāo),并在CAD中畫(huà)出閉合導(dǎo)線(xiàn),標(biāo)注每個(gè)控制點(diǎn)的坐標(biāo)。我們組在指定測(cè)區(qū)進(jìn)行踏勘,根據(jù)測(cè)區(qū)范圍及測(cè)圖要求確定布網(wǎng)方案進(jìn)行選點(diǎn)。每個(gè)一百米選一個(gè)點(diǎn),點(diǎn)的個(gè)數(shù)為5個(gè)。所選控制點(diǎn)包括一個(gè)已知點(diǎn)。點(diǎn)位選定之后,我們組立即作好標(biāo)志。然后根據(jù)水平角觀(guān)測(cè)、邊長(zhǎng)測(cè)量的要求進(jìn)行成果整理、平面坐標(biāo)計(jì)算。在踏勘的同時(shí)布設(shè)高程控制網(wǎng),高程控制點(diǎn)可設(shè)在平面控制點(diǎn)上,網(wǎng)內(nèi)應(yīng)包括原有水準(zhǔn)點(diǎn),采用全站儀三角高程測(cè)量的方法進(jìn)行四等水準(zhǔn)測(cè)量。布網(wǎng)形式為閉合路線(xiàn)。在踏勘的同時(shí)布設(shè)高程控制網(wǎng),高程控制點(diǎn)可設(shè)在平面控制點(diǎn)上,網(wǎng)內(nèi)包括原有水準(zhǔn)點(diǎn),采用全站儀三角高程測(cè)量的方法進(jìn)行四等水準(zhǔn)測(cè)量。布網(wǎng)形式為閉合路線(xiàn)。然后根據(jù)四等水準(zhǔn)測(cè)量,用三角高程測(cè)量法進(jìn)行觀(guān)測(cè)的要求進(jìn)行成果整理及高程計(jì)算。三、施工放線(xiàn)

(1)、建筑物定位放線(xiàn):

(1)我們組根據(jù)自己的控制區(qū)域,在CAD中設(shè)計(jì)了一個(gè)正方形建筑物的平面圖;

(2)根據(jù)設(shè)計(jì)的平面圖在地面上進(jìn)行建筑定位放線(xiàn)、軸線(xiàn)測(cè)設(shè)及設(shè)置軸線(xiàn)控制樁(軸線(xiàn)控制樁距軸線(xiàn)的距離為5米左右);

(3)對(duì)所放建筑物平面位置進(jìn)行檢查。其中,建筑物定位時(shí),距離誤差允許為1/5000,角度誤差允許為±30″。軸線(xiàn)測(cè)設(shè)時(shí)相鄰軸線(xiàn)的間距誤差為1/3000。

(4)最后我們組的成員站在放的軸線(xiàn)點(diǎn)上照相。

(2)、圓曲線(xiàn)測(cè)設(shè)

每組在自己的控制區(qū)域設(shè)計(jì)了一條R=50,α=45°的圓曲線(xiàn),用切線(xiàn)支距法在地面上測(cè)設(shè)出該圓曲線(xiàn)。最后小組成員也在點(diǎn)上照了一張圖片。

擴(kuò)展閱讀:平面和高程控制測(cè)量VB程序設(shè)計(jì)報(bào)告

測(cè)繪程序編制實(shí)習(xí)報(bào)告

題目:習(xí)題7.1平面和高程控制網(wǎng)平差

測(cè)繪C101蒲軒106684習(xí)題7.1蒲軒

測(cè)繪C101班

106684

余數(shù)7

17

測(cè)繪程序編制實(shí)習(xí)報(bào)告

一、設(shè)計(jì)思路

題目為:平面控制網(wǎng)和高程控制網(wǎng)的平差

1、流程圖

啟動(dòng)軟件選擇控制網(wǎng)默認(rèn)平面控制高程控制網(wǎng)平面控制網(wǎng)返回打開(kāi)高程數(shù)據(jù)點(diǎn)擊“文件”菜單高程計(jì)算輸入數(shù)據(jù)結(jié)果保存是是否保存清除運(yùn)算平面控制網(wǎng)平差計(jì)算否啟動(dòng)CommonDialogControl控件保存結(jié)果清除txtShow保存數(shù)據(jù)

2

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

2、界面設(shè)計(jì)

上面為開(kāi)始主程序,在該頁(yè)面進(jìn)行高程控制網(wǎng)平差,點(diǎn)擊平面控制啟動(dòng)下面的程序頁(yè)面進(jìn)行平面控制網(wǎng)平差。

2、功能設(shè)計(jì)

通過(guò)菜單實(shí)現(xiàn)程序的各個(gè)功能,通過(guò)菜單啟動(dòng)CommonDialogControl控件輸入txt文檔,讀取txt里面的高程或平面控制網(wǎng)數(shù)據(jù),然后點(diǎn)擊各個(gè)計(jì)算菜單進(jìn)行平差計(jì)算

二、算法及代碼實(shí)現(xiàn)

3

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

1、Form1代碼:

DimstrFileNameAsString

Dimnn%,un%,tn%,hn%"已知點(diǎn)個(gè)數(shù),未知點(diǎn)個(gè)數(shù),總點(diǎn)數(shù),觀(guān)測(cè)值個(gè)數(shù)

DimPname()AsString"點(diǎn)名數(shù)組

DimHknown()AsDouble"已知高程數(shù)組,存放已知點(diǎn)高程和高程近似值

DimbE%(),en%()"觀(guān)測(cè)值的起點(diǎn)和終點(diǎn)編號(hào)數(shù)組,存儲(chǔ)的是點(diǎn)序號(hào)

Dimh#(),s#()"高差觀(guān)測(cè)值數(shù)組和距離觀(guān)測(cè)值數(shù)組Dima#(),x#(),P#(),L#()"間接平差的系數(shù)陣、解向量、權(quán)陣和常數(shù)向量

"高程平差計(jì)算

PrivateSubmnuAdj_Click()Dimi%,j%

ReDimx(1Toun)

InAdjusta,P,L,x"調(diào)用間接平差的通用過(guò)程求解

"計(jì)算并顯示高程平差結(jié)果

txtShow.Text=txtShow.Text&"平差計(jì)算結(jié)果:"&vbCrLf

txtShow.Text=txtShow.Text&"點(diǎn)號(hào)初始高程(m)高程改正數(shù)(m)平差后高程(m)"&vbCrLfFori=1Toun

txtShow.Text=txtShow.Text&Pname(nn+i)&""&Format(Hknown(nn+i),"0.0000")

Hknown(nn+i)=Hknown(nn+i)+x(i)

txtShow.Text=txtShow.Text&""&Format(x(i),"0.0000")&""&Format(Hknown(nn+i),"0.0000")&vbCrLfNexti

txtShow.Text=txtShow.Text&vbCrLf

"計(jì)算并顯示單位權(quán)中誤差--------->>精度評(píng)定部分應(yīng)該也包含在間接平差模塊里,一起來(lái)調(diào)用"DimdblTAsDouble"dblT=0

"Fori=1Toun"

"NextiEndSub

4

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

PrivateSubmnuCalc_Click(IndexAsInteger)Form1.Visible=FalsefrmMain.Visible=True

EndSub

"誤差方程

PrivateSubmnuEqu_Click()Dimi%,j%

ReDima(1Tohn,1Toun),L(1Tohn),P(1Tohn,1Tohn)

"對(duì)每個(gè)觀(guān)測(cè)值列誤差方程Fori=1Tohn

Ifen(i)>nnThena(i,en(i)-nn)=1"若終點(diǎn)未知,則給終點(diǎn)對(duì)應(yīng)的系數(shù)矩陣元素賦值

IfbE(i)>nnThena(i,bE(i)-nn)=-1"若起點(diǎn)未知,則給起點(diǎn)對(duì)應(yīng)的系數(shù)矩陣元素賦值

L(i)=-(Hknown(en(i))-Hknown(bE(i))-h(i))"根據(jù)起終點(diǎn)計(jì)算常數(shù)項(xiàng)

P(i,i)=1/s(i)"以距離的倒數(shù)為權(quán)Nexti

"顯示誤差方程

txtShow.Text=txtShow.Text&"列立的誤差方程:"&vbCrLfFori=1TohnForj=1Toun

txtShow.Text=txtShow.Text&a(i,j)&""Nextj

txtShow.Text=txtShow.Text&""&Format(L(i),"0.0000")&vbCrLfNexti

txtShow.Text=txtShow.Text&"權(quán)矩陣:"&vbCrLfFori=1TohnForj=1Tohn

txtShow.Text=txtShow.Text&P(i,j)&""Nextj

txtShow.Text=txtShow.Text&vbCrLfNextiEndSub

PrivateSubmnuHeight_Click()"計(jì)算近似高程

5

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

Dimi%,j%

Fori=1TounForj=1Tohn

IfbE(j)=nn+iAnden(j)

Hknown(nn+i)=Hknown(en(j))-h(j)ExitForEndIf

Ifen(j)=nn+iAndbE(j)

Hknown(nn+i)=Hknown(bE(j))+h(j)ExitForEndIfNextjNexti

"顯示近似高程計(jì)算結(jié)果

txtShow.Text=txtShow.Text&"近似高程計(jì)算結(jié)果:"&vbCrLfFori=1Toun

txtShow.Text=txtShow.Text&Pname(i+nn)&":"&Format(Hknown(i+nn),"0.000")&vbCrLfNextiEndSub

"打開(kāi)高程文件

PrivateSubmnuHOpen_Click()

DimiAsInteger"循環(huán)變量DimstrT1AsString,strT2AsString

CDg1.Filter="文本文件(*.txt)|*.txt|所有文件(*.*)|*.*"CDg1.ShowOpen"打開(kāi)對(duì)話(huà)框

strFileName=CDg1.FileName"獲得選中的文件名和路徑

OpenstrFileNameForInputAs#1"打開(kāi)文件

Input#1,nn,un,hn"讀入已知點(diǎn)個(gè)數(shù),未知點(diǎn)個(gè)數(shù),觀(guān)測(cè)值個(gè)數(shù)

tn=nn+un

ReDimPname(1Totn),Hknown(1Totn)

ReDimh(1Tohn),s(1Tohn),bE(1Tohn),en(1Tohn)Fori=1Totn"讀入點(diǎn)名Input#1,Pname(i)Nexti

6

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

Fori=1Tonn"讀入已知高程Input#1,Hknown(i)Nexti

Fori=1Tohn"讀入各觀(guān)測(cè)值Input#1,strT1,strT2,h(i),s(i)

bE(i)=Order(strT1):en(i)=Order(strT2)"給起終點(diǎn)數(shù)組排序

Nexti

"顯示讀入的數(shù)據(jù)

txtShow.Text=txtShow.Text&"讀入的水準(zhǔn)網(wǎng)數(shù)據(jù):"&vbCrLftxtShow.Text=txtShow.Text&"已知點(diǎn)"&nn&"個(gè),未知點(diǎn)"&un&"個(gè),觀(guān)測(cè)值"&hn&"個(gè)。"&vbCrLf

txtShow.Text=txtShow.Text&"網(wǎng)中涉及的點(diǎn)名有:"Fori=1Totn

txtShow.Text=txtShow.Text&Pname(i)&","Nexti

txtShow.Text=txtShow.Text&vbCrLf

txtShow.Text=txtShow.Text&"已知點(diǎn)高程為:"&vbCrLfFori=1Tonn

txtShow.Text=txtShow.Text&Pname(i)&"的高程為:"&Hknown(i)&vbCrLfNexti

txtShow.Text=txtShow.Text&"各觀(guān)測(cè)值分別為:"&vbCrLftxtShow.Text=txtShow.Text&"起點(diǎn)"&""&"終點(diǎn)"&""&"高差觀(guān)測(cè)值"&"距離觀(guān)測(cè)值"&vbCrLfFori=1Tohn

txtShow.Text=txtShow.Text&Pname(bE(i))&""&Pname(en(i))&""&Format(h(i),"0.000")&""&Format(s(i),"0.000")&vbCrLfNexti

Close#1"不要忘記關(guān)閉文件EndSub

"點(diǎn)名-序號(hào)轉(zhuǎn)換函數(shù)

PublicFunctionOrder(strAsString)AsIntegerDimi%

Fori=1Totn

Ifstr=Pname(i)ThenOrder=iExitForEndIfNexti

7

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

EndFunction

"程序退出時(shí)檢查是否已保存結(jié)果

PrivateSubForm_Unload(CancelAsInteger)IftxtShow.Text""ThenDimiMsg%

iMsg=MsgBox("是否保存計(jì)算結(jié)果?",vbYesNoCancel,"注意保存!")

IfiMsg=vbYesThenmnuSave_ClickIfiMsg=vbCancelThenCancel=TrueEndIfEndSub

"保存計(jì)算結(jié)果

PrivateSubmnuSave_Click()DimiMsg%reSave:

CDg1.FileName="":CDg1.Filter="TextFiles(*.TXT)|*.txt"CDg1.Action=2

strFileName=CDg1.FileName

IfstrFileName=""Then

iMsg=MsgBox("請(qǐng)選擇文件名!",vbYesNoCancel,"注意!")IfiMsg=vbYesThenGoToreSave:Else

txtShow.Text=""ExitSubEndIfEndIf

OpenstrFileNameForOutputAs#1Print#1,txtShow.TextClose#1

txtShow.Text=""EndSub

8

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

3、frmMain代碼:

OptionExplicit

ConstPI=3.14159265358979ConstRU=206264.8

DimNet%,nn%,un%,tn%"網(wǎng)的類(lèi)型,已知點(diǎn)個(gè)數(shù),未知點(diǎn)個(gè)數(shù),總點(diǎn)數(shù)

DimPname()AsString"點(diǎn)名數(shù)組,大小為tn

DimX0#(),Y0#()"已知點(diǎn)坐標(biāo)及未知點(diǎn)近似坐標(biāo),大小為tn

Dimx#(),Y#()"已知點(diǎn)坐標(biāo)及未知點(diǎn)平差坐標(biāo),大小為tn

DimN500%"記錄Y坐標(biāo)的帶號(hào),讀入數(shù)據(jù)時(shí)減該常數(shù),輸出數(shù)據(jù)時(shí)加

DimNe%,Nd%"邊長(zhǎng)觀(guān)測(cè)值個(gè)數(shù),方向觀(guān)測(cè)值個(gè)數(shù)DimmM#,pP#"邊長(zhǎng)觀(guān)測(cè)值的固定誤差和比例誤差,單位為mm和ppm

DimbE%(),eE%(),s#()"邊長(zhǎng)觀(guān)測(cè)值的起點(diǎn)、終點(diǎn)、邊長(zhǎng)DimmD#,Dir0#(),Dir#()"方向中誤差,原始方向數(shù)組和排序后的方向數(shù)組

DimbD0%(),eD0%(),bD%(),eD%()"方向起終點(diǎn)原始數(shù)組和排序后的數(shù)組DimSi%(),Ni%()"統(tǒng)計(jì)總的方向數(shù)和每個(gè)測(cè)站的方向數(shù)Dimaa%(),bb%(),cc%()"近似坐標(biāo)的計(jì)算路線(xiàn),個(gè)數(shù)與未知點(diǎn)個(gè)數(shù)相同

DimPa#(700,9),Pa3#(200,40),W#(400)"誤差方程系數(shù)(壓縮方式存放)和常數(shù)向量DimqL#(700),qLS#(200)"誤差方程權(quán)和虛擬誤差方程的權(quán)DimQ(100,100)AsDouble"協(xié)方差陣,Q=N^(-1)DimuW0#"單位權(quán)中誤差

DimstrFileNameAsString

"檢查數(shù)據(jù)并將點(diǎn)名轉(zhuǎn)換為序號(hào)

"第一個(gè)參數(shù)是要檢查的點(diǎn)名,第二個(gè)參數(shù)是得到的序號(hào);返回值是錯(cuò)誤號(hào)PublicFunctionChkData(strPAsString,Order%)AsIntegerDimi%,bFoundAsBoolean

Order=0

bFound=False

Fori=1Totn

IfstrP=Pname(i)ThenbFound=TrueOrder=i

9

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

ChkData=0ExitForEndIfNexti

IfNotbFoundThen

OpenApp.Path&"\\err.log"ForOutputAs#1Print#1,"未找到的點(diǎn)號(hào):"&strP&vbCrLfClose#1ChkData=1

MsgBox"有未找到的點(diǎn)號(hào)",1,"輸入錯(cuò)誤"EndIfEndFunction

"文本框大小隨窗口大小的改變而改變PrivateSubForm_Resize()

txtShow.Width=frmMain.Width-330

IffrmMain.Height>1030ThentxtShow.Height=frmMain.Height-1030txtShow.Left=120txtShow.Top=120EndSub

"退出程序

PrivateSubmnuExit_Click()EndEndSub

"計(jì)算近似坐標(biāo)

PrivateSubmnuCalcCoor_Click()Screen.MousePointer=13

Dimi%,j%,k%"循環(huán)變量

IfNet=1Then"按邊長(zhǎng)計(jì)算近似坐標(biāo):使用前方交會(huì)方法DimSa#,Sb#,Sc#,al#,bl#,cl#"三角形邊長(zhǎng)和三個(gè)內(nèi)角

Fori=1Toun

Sc=DistAB(X0(aa(i)),Y0(aa(i)),X0(bb(i)),Y0(bb(i)))Forj=1ToNe

If(bE(j)=bb(i)AndeE(j)=cc(i))Or(bE(j)=cc(i)AndeE(j)=bb(i))ThenSa=s(j)

If(bE(j)=aa(i)AndeE(j)=cc(i))Or(bE(j)=cc(i)AndeE(j)=aa(i))ThenSb=s(j)

Nextj

CallGetInnerAngleS(Sa,Sb,Sc,al,bl,cl)"求三角形三個(gè)內(nèi)角

10

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

"調(diào)用前方交會(huì)程序計(jì)算待定點(diǎn)坐標(biāo)

ForIntersecX0(aa(i)),Y0(aa(i)),X0(bb(i)),Y0(bb(i)),al,bl,X0(cc(i)),Y0(cc(i))Nexti

"顯示計(jì)算結(jié)果

OpenApp.Path&"\\按邊長(zhǎng)計(jì)算近似坐標(biāo).txt"ForOutputAs#1Print#1,"按邊長(zhǎng)計(jì)算近似坐標(biāo):"

txtShow.Text=txtShow.Text&"按邊長(zhǎng)計(jì)算近似坐標(biāo):"&vbCrLfFori=nn+1Totn

Print#1,Pname(i),Format(X0(i),"0.0000"),Format(Y0(i),"0.0000")

txtShow.Text=txtShow.Text&Pname(i)&","&Format(X0(i),"0.0000")&","&Format(Y0(i),"0.0000")&vbCrLfNextiClose#1EndIf

IfNet=2Then"根據(jù)方向觀(guān)測(cè)值計(jì)算近似坐標(biāo):使用前方交會(huì)方法

DimTa#,Tb#"用于交會(huì)的兩個(gè)角

Fori=1Toun

Ta=GetBeta(bb(i),aa(i),cc(i),j)"求角ATb=GetBeta(aa(i),bb(i),cc(i),j)"求角B"調(diào)用前方交會(huì)程序計(jì)算待定點(diǎn)坐標(biāo)

ForIntersecX0(aa(i)),Y0(aa(i)),X0(bb(i)),Y0(bb(i)),Ta,Tb,X0(cc(i)),Y0(cc(i))Nexti

OpenApp.Path&"\\按方向計(jì)算近似坐標(biāo).txt"ForOutputAs#1Print#1,"按方向計(jì)算近似坐標(biāo):"

txtShow.Text=txtShow.Text&"按方向計(jì)算近似坐標(biāo):"&vbCrLfFori=nn+1Totn

Print#1,Pname(i),Format(X0(i),"0.0000"),Format(Y0(i),"0.0000")

txtShow.Text=txtShow.Text&Pname(i)&","&Format(X0(i),"0.0000")&","&Format(Y0(i),"0.0000")&vbCrLfNextiClose#1EndIf

IfNet>2Then"根據(jù)邊角條件計(jì)算近似坐標(biāo):使用極坐標(biāo)方法

DimdblS#,dblA#,dblD#"極坐標(biāo)方法中的邊長(zhǎng)、夾角、方位角Dimdir1#,dir2#,bFAsBoolean"兩個(gè)臨時(shí)的方向,一個(gè)邏輯開(kāi)關(guān)Fori=nn+1Totn

Forj=Si(i)ToSi(i)+Ni(i)-1IfeD(j)

"如果搜索要用到的邊長(zhǎng)和方向值,則根據(jù)極坐標(biāo)法計(jì)算待丁點(diǎn)坐

11

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

標(biāo)

IfFoundSid(eD(j),i,dblS)AndFoundDir1(eD(j),i,dir1)ThenbF=False

Fork=Si(eD(j))ToSi(eD(j))+Ni(eD(j))-1IfeD(k)

dir2=Dir(k):bF=True

dblA=dir1-dir2:IfdblA<0ThendblA=dblA+2*PI

"調(diào)用極坐標(biāo)方法求點(diǎn)的坐標(biāo)

PolarPositioningX0(eD(k)),Y0(eD(k)),X0(eD(j)),Y0(eD(j)),dblS,dblA,X0(i),Y0(i)

ExitForEndIfNextk

IfbFThenExitForEndIfEndIfNextjNexti

txtShow.Text=txtShow.Text&"按全邊角網(wǎng)計(jì)算近似坐標(biāo)(m):"&vbCrLfOpenApp.Path&"\\按全邊角網(wǎng)計(jì)算近似坐標(biāo).txt"ForOutputAs#1Print#1,"按全邊角網(wǎng)計(jì)算近似坐標(biāo)(m):"Fori=nn+1Totn

Print#1,Pname(i),Format(X0(i),"0.0000"),Format(Y0(i),"0.0000")

txtShow.Text=txtShow.Text&str(Pname(i))&""&Format(X0(i),"0.0000")&","&Format(Y0(i),"0.0000")&vbCrLfNextiClose#1EndIf

Screen.MousePointer=0EndSub

"搜索已知起點(diǎn)和終點(diǎn)的邊

PublicFunctionFoundSid(beNode%,enNode%,dblS#)AsBooleanDimk%"循環(huán)變量FoundSid=FalseFork=1ToNe

If(bE(k)=beNodeAndeE(k)=enNode)Or(bE(k)=enNodeAndeE(k)=beNode)Then

dblS=s(k)

FoundSid=TrueExitFunction

12

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

EndIfNextkEndFunction

"搜索已知起點(diǎn)和終點(diǎn)的起始方向值

PublicFunctionFoundDir1(beNode%,enNode%,dblDir#)AsBooleanDimk%"循環(huán)變量FoundDir1=False

Fork=Si(beNode)ToSi(beNode)+Ni(beNode)-1IfeD(k)=enNodeThendblDir=Dir(k)FoundDir1=TrueExitFunctionEndIfNextkEndFunction

"搜索已知起點(diǎn)和終點(diǎn)的終止方向值

PublicFunctionFoundDir2(beNode%,enNode%,dblDir#)AsBooleanDimk%"循環(huán)變量FoundDir2=False

Fork=Si(beNode)ToSi(beNode)+Ni(beNode)-1IfeD(k)

"輸入觀(guān)測(cè)數(shù)據(jù)

PrivateSubmnuInput_Click()Screen.MousePointer=13

CDg1.Filter="TextFiles(*.TXT)|*.txt"CDg1.Action=1

strFileName=CDg1.FileNameIfstrFileName=""ThenExitSub

Dimi%,j%"循環(huán)變量DimstrT1$,strT2$,strT3$"臨時(shí)字符串

DimErr1%,Err2%,Err3%,Err4%"錯(cuò)誤號(hào),分別表示找不到起點(diǎn)、終點(diǎn)編號(hào)和起末點(diǎn)相同的錯(cuò)誤

13

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

txtShow.Text=txtShow.Text&"數(shù)據(jù)文件:"&vbCrLfOpenstrFileNameForInputAs#1

Input#1,Net"讀入網(wǎng)形參數(shù)txtShow.Text=txtShow.Text&"Net="&str(Net)&vbCrLf

Input#1,nn,un"讀入點(diǎn)數(shù)tn=nn+un

ReDimPname(tn),X0(tn),Y0(tn),x(tn),Y(tn)"聲明點(diǎn)名、初始坐標(biāo)數(shù)組和坐標(biāo)平差值大小

txtShow.Text=txtShow.Text&"已知點(diǎn)"&str(nn)&"個(gè),未知點(diǎn)"&str(un)&"個(gè)"&vbCrLf

Fori=1Totn"讀入各點(diǎn)名Input#1,Pname(i)

txtShow.Text=txtShow.Text&"Pname("&i&")="&Pname(i)&","Nexti

txtShow.Text=txtShow.Text&vbCrLf

Fori=1Tonn"讀入已知點(diǎn)坐標(biāo)Input#1,X0(i),Y0(i)"去掉帶號(hào)和500公里

N500=Val(Left(Trim(str(Y0(i))),2))"得到帶號(hào)N500=N500*10+5

Y0(i)=Y0(i)-N500*100000"給Y坐標(biāo)去掉帶號(hào)和500Km

txtShow.Text=txtShow.Text&"x0("&i&")="&str(X0(i))&","&"y0("&i&")="&str(Y0(i))&vbCrLfNexti

Input#1,Ne,Nd"讀入邊長(zhǎng)、角度觀(guān)測(cè)值、方位角觀(guān)測(cè)值的個(gè)數(shù)

txtShow.Text=txtShow.Text&"邊長(zhǎng)觀(guān)測(cè)值"&str(Ne)&"個(gè),角度觀(guān)測(cè)值"&str(Nd)&"個(gè)。"&vbCrLf

IfNe>0Then"如果有邊長(zhǎng)觀(guān)測(cè)值,那么讀入邊長(zhǎng)觀(guān)測(cè)值

Input#1,mM,pP"輸入邊長(zhǎng)精度:固定誤差和比例誤差txtShow.Text=txtShow.Text&"邊長(zhǎng)固定誤差"&Format(mM,"0.00")&"mm,比例誤差"&str(pP)&"ppm。"&vbCrLf

ReDimbE(Ne),eE(Ne),s(Ne)"聲明邊數(shù)組大小Fori=1ToNe"輸入邊長(zhǎng)有關(guān)信息Input#1,strT1,strT2,s(i)

Err1=ChkData(strT1,bE(i))"檢查起點(diǎn)并計(jì)算起點(diǎn)序號(hào)Err2=ChkData(strT2,eE(i))"檢查終點(diǎn)并計(jì)算終點(diǎn)序號(hào)

txtShow=txtShow&"be("&i&")="&Pname(bE(i))&","&"eE("&i&")="&Pname(eE(i))&","&"s("&i&")="&str(s(i))&","&vbCrLfNexti

14

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

"讀入的邊長(zhǎng)數(shù)據(jù)寫(xiě)入文件,并做檢查

OpenApp.Path&"\\邊長(zhǎng)觀(guān)測(cè)值數(shù)據(jù).txt"ForOutputAs#2Print#2,"邊長(zhǎng)觀(guān)測(cè)值:"Print#2,"mm="&mMPrint#2,"pp="&pPFori=1ToNe

Print#2,"bE("&i&")=";Pname(bE(i));",eE("&i&")=";Pname(eE(i));",s("&i&")=";s(i)NextiClose#2

"檢查邊的起點(diǎn)與終點(diǎn)是否相同Err3=0

Fori=1ToNe

IfbE(i)=eE(i)ThenErr3=1

OpenApp.Path&"\\err.log"ForOutputAs#2

Print#2,"s("&i&")","bE("&i&")="&Pname(bE(i)),"eE("&i&")="&Pname(eE(i))

Close#2EndIfNexti

IfErr1+Err2+Err30ThenMsgBox"邊長(zhǎng)輸入錯(cuò)誤",1,"出錯(cuò)"EndIf

IfNd>0Then"如果有方向觀(guān)測(cè)值,那么讀入方向觀(guān)測(cè)值

Dimii%,ik%"輔助循環(huán)變量Input#1,mD"讀入方向中誤差txtShow.Text=txtShow.Text&"方向中誤差:"&str(mD)&vbCrLf

ReDimbD(1ToNd),eD(1ToNd),Dir(Nd)"聲明方向數(shù)組大小

ReDimSi(Nd),Ni(Nd)"聲明測(cè)站測(cè)回?cái)?shù)數(shù)組的大小ReDimbD0(Nd),eD0(Nd),Dir0(Nd)"聲明輔助方向數(shù)組大小Fori=1ToNd

Input#1,strT1,strT2,Dir(i)

Err1=ChkData(strT1,bD(i))"檢查起點(diǎn)并計(jì)算起點(diǎn)序號(hào)Err2=ChkData(strT2,eD(i))"檢查終點(diǎn)并計(jì)算終點(diǎn)序號(hào)

txtShow=txtShow&"bD("&i&")="&Pname(bD(i))&";eD("&i&")="&Pname(eD(i))&";dir("&i&")="&Dir(i)&vbCrLfNexti

"讀入的方向數(shù)據(jù)寫(xiě)入文件并檢查

OpenApp.Path&"\\方向觀(guān)測(cè)值數(shù)據(jù).txt"ForOutputAs#2Print#2,"方向觀(guān)測(cè)值中誤差md="&mD

15

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

Fori=1ToNd

bD0(i)=bD(i):eD0(i)=eD(i):Dir0(i)=Dir(i):Dir(i)=DoToHu(Dir(i))Nexti

Err3=0

Fori=1ToNd

IfbD0(i)=eD0(i)ThenErr3=1

OpenApp.Path&"\\err.log"ForOutputAs#3

Print#3,"dir("&i&")","bD("&i&")="&Pname(bD0(i)),"eD("&i&")="&Pname(eD0(i))

Close#3EndIfNexti

IfErr1+Err2+Err30ThenMsgBox"方向輸入錯(cuò)誤",1,"輸入出錯(cuò)""統(tǒng)計(jì)每個(gè)測(cè)站的方向數(shù)ik=1:Si(1)=1Fori=1Totnii=0

Forj=1ToNd

IfbD0(j)=iThenii=ii+1

bD(ik)=bD0(j)eD(ik)=eD0(j)

Dir(ik)=DoToHu(Dir0(j))ik=ik+1EndIfNextjNi(i)=ii

Si(i+1)=Si(i)+Ni(i)Nexti

Fori=1ToNd

Print#2,"bD("&i&")="&bD(i)Print#2,"eD("&i&")="&eD(i)

Print#2,"dir("&i&")="&Format(Dir0(i),"0.00000")

Print#2,"dir("&i&")="&Format(DoToHu(Dir0(i)),"0.00000")NextiClose#2EndIf

IfNet=1OrNet=2Then"讀取近似坐標(biāo)的計(jì)算路線(xiàn)Fori=1Toun

Input#1,aa(i),bb(i),cc(i)

Err1=ChkData(strT1,aa(i))"檢查起點(diǎn)并計(jì)算起點(diǎn)序號(hào)

16

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

Err2=ChkData(strT2,bb(i))"檢查中點(diǎn)并計(jì)算終點(diǎn)序號(hào)Err3=ChkData(strT3,cc(i))"檢查終點(diǎn)并計(jì)算終點(diǎn)序號(hào)Nexti

OpenApp.Path&"\\近似坐標(biāo)計(jì)算路線(xiàn).txt"ForOutputAs#2Print#1,"近似坐標(biāo)計(jì)算路線(xiàn):"Fori=1Toun

Print#1,aa(i),bb(i),cc(i)NextiClose#1

Fori=1TounErr4=0

Ifaa(i)=bb(i)Orbb(i)=cc(i)Orcc(i)=aa(i)ThenErr4=1

OpenApp.Path&"\\err.log"ForOutputAs#1

Print#1,"點(diǎn)號(hào)相同的計(jì)算路線(xiàn)"

Print#1,"aa("&i&")","bb("&i&")","cc("&i&")"Close#1EndIf

IfErr1+Err2+Err3+Err40ThenMsgBox"計(jì)算路線(xiàn)有誤",1,"錯(cuò)誤"NextiEndIfClose#1

Screen.MousePointer=0EndSub

"計(jì)算點(diǎn)位誤差橢圓

PrivateSubmnuPointElli_Click()Screen.MousePointer=13

Dimi%,ii%"循環(huán)變量,輔助記數(shù)DimQ1#,Q2#,Q3#,T1#,T2#,T3#,tt#"臨時(shí)變量

DimMx#,My#,m#"x、y坐標(biāo)的誤差以及總的點(diǎn)位誤差DimFai#,Fa#,Fb#"誤差橢圓的偏心率、長(zhǎng)軸、短軸

OpenApp.Path&"\\點(diǎn)位誤差橢圓.txt"ForOutputAs#1Print#1,"點(diǎn)位誤差橢圓:"Fori=1Toun

Q1=Q(2*i-1,2*i-1):Q2=Q(2*i,2*i):Q3=Q(2*i-1,2*i)T1=Q1-Q2:T2=2*Q3:T3=Q1+Q2Mx=Sqr(Q1):My=Sqr(Q2):m=Sqr(T3)

"求Fai:這里是角度值

17

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

IfAbs(T1)<1E-16Then

IfQ3>=0ThenFai=90ElseFai=-90Else

Fai=Atn(T2/T1)*57.2958EndIf

IfT1>=0AndT2>=0ThenFai=Fai/2Else

IfT1>=0AndT2測(cè)繪程序編制實(shí)習(xí)報(bào)告

IfiMsg=vbCancelThenCancel=TrueEndIfEndSub

"保存計(jì)算結(jié)果

PrivateSubmnuSave_Click()DimiMsg%reSave:

CDg1.FileName="":CDg1.Filter="TextFiles(*.TXT)|*.txt"CDg1.Action=2

strFileName=CDg1.FileName

IfstrFileName=""Then

iMsg=MsgBox("請(qǐng)選擇文件名!",vbYesNoCancel,"注意!")IfiMsg=vbYesThenGoToreSave:Else

txtShow.Text=""ExitSubEndIfEndIf

OpenstrFileNameForOutputAs#1Print#1,txtShow.TextClose#1

txtShow.Text=""EndSub

"平差計(jì)算

PrivateSubmnuAdjust_Click()Screen.MousePointer=13

"列立誤差方程===================================================================================

DimstrRAsString,S3$"用于顯示內(nèi)容的字符串Dimi%,j%,k%"循環(huán)變量Dimii%,jj%,kk%"輔助記數(shù)變量

DimdX#,dY#,ss#,cosa#,sinA#"列邊長(zhǎng)誤差方程所需中間變量DimZ0#,Z1#,a0#"列方向誤差方程所需中間變量Dimai#,bi#,P3(300)AsSingle"一些輔助變量和數(shù)組Dimk1%,k2%,pPp(300)AsInteger"一些輔助變量和數(shù)組

IfNe>0Then"按邊長(zhǎng)計(jì)算方程系數(shù)

19

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

strR="邊長(zhǎng)誤差方程:"&vbCrLfFori=1ToNe

dX=X0(eE(i))-X0(bE(i)):dY=Y0(eE(i))-Y0(bE(i))

ss=Sqr(dX^2+dY^2):cosa=dX/ss:sinA=dY/ss

"系數(shù)陣及常數(shù)項(xiàng)

Pa(i,1)=2*(bE(i)-nn)-1:Pa(i,2)=-cosa:Pa(i,3)=Pa(i,1)+1

Pa(i,4)=-sinA:Pa(i,5)=2*(eE(i)-nn)-1:Pa(i,6)=cosa

Pa(i,7)=Pa(i,5)+1:Pa(i,8)=sinA:Pa(i,9)=100*(ss-s(i))"權(quán)

qL(i)=mM^2+(ss*pP*0.0001)^2

S3="V("&i&")="&Format(Pa(i,2),"0.000")&"X("&Pname(bE(i))S3=S3&")+"&Format(Pa(i,4),"0.000")&"Y("&Pname(bE(i))&")+"S3=S3&Format(Pa(i,6),"0.000")&"X("&Pname(eE(i))&")+"

S3=S3&Format(Pa(i,8),"0.000")&"Y("&Pname(eE(i))&")"&"+"&Format(Pa(i,9),"0.00")&","Forj=1ToLen(S3)

IfMid(S3,j,1)="+"AndMid(S3,j+1,1)="-"ThenS3=Left$(S3,j-1)&Right(S3,Len(S3)-j)Nextj

strR=strR&S3&"權(quán)為:"&Format(qL(i),"0.000000")&vbCrLf&vbCrLfNextiEndIf

IfNd>0Then"按方向計(jì)算方程系數(shù)Fori=1Totnjj=5

Z0=0"統(tǒng)計(jì)虛擬方程的常數(shù)項(xiàng)Forj=Si(i)ToSi(i)+Ni(i)-1

a0=DirectAB(X0(eD(j)),Y0(eD(j)),X0(bD(j)),Y0(bD(j)))Z1=a0-Dir(j)

IfZ1<0ThenZ1=Z1+2*PIZ0=Z0+Z1Nextj

Z0=Z0/Ni(i)

k2=1P3(i)=0

strR=strR&vbCrLf&"方向誤差方程:"&vbCrLfForj=Si(i)ToSi(i)+Ni(i)-1

20

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

dX=X0(eD(j))-X0(bD(j)):dY=Y0(eD(j))-Y0(bD(j))

a0=DirectAB(X0(eD(j)),Y0(eD(j)),X0(bD(j)),Y0(bD(j)))

ss=Sqr((X0(eD(j))-X0(bD(j)))^2+(Y0(eD(j))-Y0(bD(j)))^2)ai=dY/(ss^2)*RU/100bi=-dX/(ss^2)*RU/100

ii=Ne+j

Pa(ii,1)=2*(bD(j)-nn)-1:Pa(ii,2)=aiPa(ii,3)=Pa(ii,1)+1:Pa(ii,4)=biPa(ii,5)=2*(eD(j)-nn)-1:Pa(ii,6)=-aiPa(ii,7)=Pa(ii,5)+1:Pa(ii,8)=-biqL(ii)=mD^2

ss=Dir(j)+Z0:Ifss>=2*PIThenss=ss-2*PI

Pa(ii,9)=(a0-ss)*RU

Pa3(i,jj)=Pa(ii,5):Pa3(i,jj+1)=Pa(ii,6)/qL(ii)

Pa3(i,jj+2)=Pa(ii,7):Pa3(i,jj+3)=Pa(ii,8)/qL(ii)

Pa3(i,2)=Pa3(i,2)+Pa(ii,2)/qL(ii):Pa3(i,4)=Pa3(i,4)+Pa(ii,4)/qL(ii)

P3(i)=P3(i)+Pa(ii,9)/qL(ii)

jj=jj+4

S3=vbCrLf&"V("&ii&")=-"&Format(Z0,"0.000")&"+"&Format(Pa(ii,2),"0.000")&"X("&Pname(bD(j))&")+"

S3=S3&Format(Pa(ii,4),"0.000")&"Y("&Pname(bD(j))&")+"&Format(Pa(ii,6),"0.000")&"X("&Pname(eD(j))&")+"

S3=S3&Format(Pa(ii,8),"0.000")&"Y("&Pname(eD(j))&")"&"+"&Format(Pa(ii,9),"0.000")

S3=S3&",權(quán)為:"&Format(qL(ii),"0.000000")&vbCrLfFork=1ToLen(S3)

IfMid(S3,k,1)="+"AndMid(S3,k+1,1)="-"ThenS3=Left$(S3,k-1)&Right(S3,Len(S3)-k)Nextk

strR=strR&S3pPp(k2)=eD(j)k2=k2+1Nextj

21

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

"列虛擬誤差方程k2=k2-1

Pa3(i,1)=Pa(ii,1):Pa3(i,3)=Pa(ii,3):qLS(i)=-Ni(i)/(mD^2)

"顯示虛擬誤差方程

strR=strR&"虛擬誤差方程(測(cè)站號(hào)"&Pname(i)&"):"&vbCrLf

S3="V("&Pname(i)&")="&Format(Pa3(i,2),"0.000")&"X("&Pname(i)&")+"&Format(Pa3(i,4),"0.000")&"Y("&Pname(i)&")+"Fork=6TojjStep4

S3=S3&Format(Pa3(i,k),"0.000")&"X("&Pname(pPp((k-2)\\4))&")+"

S3=S3&Format(Pa3(i,4),"0.000")&"Y("&Pname(pPp((k-2)\\4))&")+"

Nextk

S3=S3&Format(P3(i),"0.000")Fork=1ToLen(S3)

IfMid(S3,k,1)="+"AndMid(S3,k+1,1)="-"ThenS3=Left$(S3,k-1)&Right(S3,Len(S3)-k)Nextk

strR=strR&S3&",權(quán)為:"&Format(qL(i),"0.000000")&vbCrLfNextiEndIf

OpenApp.Path&"\\誤差方程.txt"ForOutputAs#1Print#1,strRClose#1

txtShow.Text=txtShow.Text&vbCrLf&strR&vbCrLf

"解算法方程:由系數(shù)矩陣Pa、Pa3,常數(shù)向量qL、qLS,求解============================

Dimm%,n%,st%"誤差方程總數(shù),未知數(shù)總數(shù),定向角參數(shù)個(gè)數(shù)

DimPvv#,sigma#(100)"用于統(tǒng)計(jì)單位權(quán)中誤差的誤差累計(jì)量DimdetS,detDir"邊長(zhǎng)改正數(shù)、方向改正數(shù)

Dimt#(800,800),R#(100,100),c#(100,100)"臨時(shí)的數(shù)組,輔助進(jìn)行平差解算

"形成法方程

m=Ne+Nd"誤差方程總數(shù)Fori=1TomForj=1To4

jj=Int(Pa(i,2*j-1))Ifjj>0Then

W(jj)=W(jj)+Pa(i,2*j)*Pa(i,9)/qL(i)Fork=1To4

22

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

kk=Int(Pa(i,2*k-1))

Ifkk>0Andjj測(cè)繪程序編制實(shí)習(xí)報(bào)告

Fori=1Ton

Forj=i+1TonR(i,j)=0

Fork=iToj-1

R(i,j)=R(i,j)-R(i,k)*t(k,j)/t(j,j)NextkNextjNexti

Fori=1TonForj=iTon

Fork=jTon

Q(i,j)=t(k,k)*R(i,k)*R(j,k)+Q(i,j)Nextk

Q(j,i)=Q(i,j)NextjNexti

"求改正數(shù)Fori=1TonForj=1Ton

sigma(i)=sigma(i)-Q(i,j)*W(j)NextjNexti"改化坐標(biāo)

Fori=nn+1Totn

x(i)=X0(i)+sigma((i-nn)*2-1)/100Y(i)=Y0(i)+sigma((i-nn)*2)/100Nexti

"求單位權(quán)中誤差Fori=1Ton

Pvv=Pvv+sigma(i)*W(i)Nexti

Fori=1Tom

Pvv=Pvv+Pa(i,9)*Pa(i,9)/qL(i)Nexti

uW0=Sqr(Pvv/(m-n-st))

"顯示計(jì)算結(jié)果

txtShow.Text=txtShow.Text&vbCrLf

OpenApp.Path&"\\平差結(jié)果.txt"ForOutputAs#1Print#1,"坐標(biāo)計(jì)算結(jié)果(m):"

Print#1,"點(diǎn)號(hào)原X坐標(biāo)X坐標(biāo)平差值Y坐標(biāo)平差值Vy"

24

測(cè)繪C101蒲軒106684習(xí)題7.17

Vx原Y坐標(biāo)測(cè)繪程序編制實(shí)習(xí)報(bào)告

txtShow.Text=txtShow.Text&"坐標(biāo)計(jì)算結(jié)果(m):"&vbCrLf

txtShow=txtShow&"點(diǎn)號(hào)原X坐標(biāo)X坐標(biāo)平差值Vx原Y坐標(biāo)Y坐標(biāo)平差值Vy"&vbCrLfFori=nn+1Totn

"給Y坐標(biāo)加上帶號(hào)和500KmY(i)=Y(i)+N500*100000Y0(i)=Y0(i)+N500*100000

Print#1,Pname(i),Format(x(i),"0.0000"),Format(Y(i),"0.0000")

txtShow=txtShow&Pname(i)&""&Format(X0(i),"0.0000")&""&Format(x(i),"0.0000")&""&Format(X0(i)-x(i),"0.0000")

txtShow=txtShow&""&Format(Y0(i),"0.0000")&""&Format(Y(i),"0.0000")&""&Format(Y0(i)-Y(i),"0.0000")&vbCrLfNexti

Print#1,"σ0="&Format(uW0,"0.00");"厘米"

txtShow.Text=txtShow.Text&"σ0="&Format(uW0,"0.00")&"厘米"&vbCrLfClose#1

Screen.MousePointer=0EndSub

"由方向值求夾角值:夾角的三個(gè)點(diǎn),角頂點(diǎn)在中間,返回夾角值;參數(shù)PublicFunctionGetBeta(i1%,i2%,i3%,k%)AsDoubleDimk1%,k2%,dir1#,dir2#,i%k=0:k1=0:k2=0

Fori=Si(i2)ToSi(i2)+Ni(i2)-1IfeD(i)=i1Thenk1=1

dir1=Dir(i)EndIf

IfeD(i)=i3Thenk2=1

dir2=Dir(i)EndIfNexti

Ifk1=1Andk2=1Thenk=1

GetBeta=dir2-dir1

IfGetBeta<0ThenGetBeta=GetBeta+2*PIIfGetBeta>PIThenGetBeta=2*PI-GetBetaEndIfEndFunction

PrivateSubmnuReturn_Click()

25

測(cè)繪C101蒲軒106684習(xí)題7.1測(cè)繪程序編制實(shí)習(xí)報(bào)告

frmMain.Visible=FalseForm1.Visible=TrueEndSub

測(cè)繪C101蒲軒106684習(xí)題7.126

7

友情提示:本文中關(guān)于《平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié)》給出的范例僅供您參考拓展思維使用,平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié):該篇文章建議您自主創(chuàng)作。

來(lái)源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問(wèn)題,請(qǐng)聯(lián)系我們及時(shí)刪除。


平面和高程控制測(cè)量實(shí)訓(xùn)總結(jié)》由互聯(lián)網(wǎng)用戶(hù)整理提供,轉(zhuǎn)載分享請(qǐng)保留原作者信息,謝謝!
鏈接地址:http://www.seogis.com/gongwen/446141.html