• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    VB6.0程序在全站儀圖根導線測量中的應用

    2014-09-24 05:42吳呂穩(wěn)
    城市建設理論研究 2014年25期
    關鍵詞:全站儀邊長導線

    吳呂穩(wěn)

    摘要:充分利用全站儀的各種功能,用“VB6.0”編寫的程序直接對全站儀觀測的記錄數(shù)據(jù)進行分析處理,并生成平差文件和觀測手簿,達到內外業(yè)一體化圖根導線測量。

    關鍵詞:全站儀;VB6.0;圖根導線觀測;數(shù)據(jù)格式處理;數(shù)據(jù)檢查處理

    中圖分類號:C37文獻標識碼: A

    1 前言

    全站儀在地形、地籍測量中的廣泛應用,使圖根導線觀測更加準確、快捷,但大部分的導線平差軟件還不支持與全站儀直接進行數(shù)據(jù)交換,平差計算還需要人工對全站儀的觀測數(shù)據(jù)進行整理計算、手工錄入,不僅費時費力,還容易產(chǎn)生粗差。

    全站儀具有測距測角自動記錄及傳輸數(shù)據(jù)的自動化的功能,本文以topcon系列全站儀為例,利用“VB6.0”編寫的程序,對觀測數(shù)據(jù)進行分析處理,并進行轉換、檢查,最終生成清華山維nasew95格式的平差文件及Word格式的導線平差文件。

    2 全站儀觀測數(shù)據(jù)格式

    topcon全站儀以測量模式輸出的原始觀測數(shù)據(jù)文件一般有兩種,見表1,表2。

    表1 斜距(SD)模式

    ? +01178481 m 0852030 +1203040 d 01174572

    ID SD m/f V H d/g/m HD

    數(shù)據(jù)識別符 斜距 距離單位 垂直角 水平角 角度單位 平距

    t 00 +00 +25 099 EXT(CRLF)

    t/* L P O BCC

    傾斜改正(t打開,*關閉) 0值 大氣改正數(shù) 棱鏡常數(shù) 塊較驗符 結束符

    表2平距/高差(HD/VD)模式

    R +01174572 m 0852030 +1203040 d 01174572

    ID HD m/f V H d/g/m HD

    數(shù)據(jù)識別符 平距 距離單位 垂直角 水平角 角度單位 平距

    t 00 +00 -30 099 EXT(CRLF)

    t/* L P O BCC

    傾斜改正(t打開,*關閉) 0值 大氣改正數(shù) 棱鏡常數(shù) 塊較驗符 結束符

    3 程序模塊設計思想

    程序分為“數(shù)據(jù)預處理”、“中間數(shù)據(jù)檢查處理”和“平差文件、導線觀測手簿”三部分。

    “數(shù)據(jù)預處理”模塊:利用VB程序讀取全站儀觀測數(shù)據(jù)文件,根據(jù)數(shù)據(jù)識別符對每測站的字符串進行分解,來獲取各測站及觀測方向點(點名、儀器高、方向名、水平角、垂直角、距離、目標高)信息,生成后綴為.ELE的中間文件(*.ELE文件為清華山維nasew95平差軟件的外業(yè)數(shù)據(jù)觀測格式)。*.ELE以文本格式保存,生成速度快、存取方便,生成的數(shù)據(jù)格式內容整齊、便于人工辯讀及除去多余觀測量。

    表3中間文件數(shù)據(jù)格式

    *A003,1.610

    測站名,儀器高

    004,HZS,000.0000,090.2454,00083.671,1.194

    測站,模式,水平角,垂直角,距離,目標高

    002,HZS,244.0324,090.0415,00084.636,1.194

    ----

    盤左盤右分隔符

    A002,HZS,064.0307,269.5542,00084.636,1.194

    A004,HZS,179.5943,269.3453,00083.671,1.194

    “中間數(shù)據(jù)檢查處理”:調用Microsoft Access軟件將*.ELE文件導入到數(shù)據(jù)庫中,計算2C、指標差、高差等計算量,使用SQL語言對測站的盤左盤右方向名是否相同、2C、指標差、對向邊長、對向高差等精度進行檢查并生成報表;

    “平差文件、導線觀測手簿”:對通過“中間數(shù)據(jù)檢查處理”的*.ELE文件,從Access數(shù)據(jù)庫中提取所需數(shù)據(jù),在已知點數(shù)據(jù)文件中提取已知點生成*.MSM文件,直接調用清華山維nasew95程序打開進行平差計算。平差文件直接加載了已知點數(shù)據(jù),減少了人為輸入產(chǎn)生的錯誤。

    提取Access中的觀測數(shù)據(jù),在Word軟件中生成導線觀測手簿(表四),便于后期資料整理。

    表四圖根導線觀測手簿

    4 程序代碼

    4.1數(shù)據(jù)預處理

    (1)導線參數(shù)設定

    Load Dialog1

    Dialog1.Show vbModal‘調用參數(shù)設置對話窗體

    Open App.Path & "daoxian.lyb" For Random As #1 Len = Len(DaoXian)‘將導線設置參數(shù)寫入到二進制文件中,方便調用。

    Put #1, 1, DaoXian

    (2)讀取原始觀測數(shù)據(jù)

    CommonDialog1.ShowOpen ‘調用打開對話框

    RichTextBox1.LoadFile CommonDialog1.Filename, rtfText ‘打開原始觀測文件,讀取文件內容到文本框內

    (3)數(shù)據(jù)轉換(生成*.ELE文件)

    TempStr = QuWei(TempStr)‘調用函數(shù)去掉文本中的CRLF、EXT和塊較驗符

    利用循環(huán)語句對每測站進行讀取

    Cz = StrHead(TempStr, "_'") ‘測站信息

    If InStr(ch, "_?+") > 0 Then‘判斷邊長測量模式

    ………

    對字符串進行分解,根據(jù)設置的參數(shù)重新組合得到測站的方向點點名、距離、垂直角、水平角、目標高。

    End If

    RichTextBox1.Text=“”‘清空文本框中的內容

    RichTextBox1.Text=NewTempStr ‘將處理好的文本寫入到文本框中

    CommonDialog1.ShowSave‘彈出保存對話框

    RichTextBox1.SaveFile CommonDialog1.Filename, rtfText

    4.2 中間數(shù)據(jù)檢查處理

    讀取*.ELE文件→Access→數(shù)據(jù)檢查

    (1) *.ELE文件導入Access

    Set db = OpenDatabase(App.Path & "Traverse.mdb") ‘設置數(shù)據(jù)庫

    db.Execute "INSERT INTO [測站](ID,測站名,儀器高,文件號) VALUES(CZGC)"‘讀入測站信息。

    db.Execute "INSERT INTO [方向點](ID,方向名,水平角盤左,垂直角盤左,邊長讀數(shù)1,覘標高,文件號)VALUES(FXGCPZ)" ‘讀入觀測方向信息。

    (2)各項檢查常數(shù)計算

    Set RS = db.OpenRecordset("select * from 方向點 where 文件號=1" )

    RS.Edit

    RS.Fields(4).Value = (DMS(DEG(RS.Fields(2).Value) - (DEG(RS.Fields(3).Value) - DEG(180)))) * 10000 ‘計算指標差

    RS.Fields(5).Value = DMS(DEG(RS.Fields(2).Value) - DEG(RS.Fields(4).Value / 20000)) ‘計算2C

    RS.Fields(6).Value = DMS(DEG(RS.Fields(5).Value) - DEG(Val(Gl)))‘計算水平角中值

    RS.Update

    (3)數(shù)據(jù)檢查

    Set RS = db.OpenRecordset(select測站.ID,測站名, 方向名,指標差 from 方向點,測站 WHERE 測站.ID=方向點.ID and abs(指標差)>" & ZBC & " and 方向點.文件號=1") ‘檢測指標差。

    Set RS = db.OpenRecordset("select測站.ID,測站名, 方向名,邊長讀數(shù)1,讀數(shù)2 from 方向點,測站 WHERE 測站.ID=方向點.ID and abs(邊長讀數(shù)1-讀數(shù)2)>" & BC & " and 方向點.文件號="1) ‘邊長檢測。

    Set RS = db.OpenRecordset("select測站.ID,測站名, 方向名,高差,平距 from 中值,測站 WHERE 測站.ID=中值.ID and 測站.文件號=1")‘讀取測站觀測信息。

    RS .Fields(2).Value = Cz And RS.Fields(1).Value = fx And Abs(RS.Fields(4).Value - Zjl) > PingJu ‘對向距離檢查。

    Abs(Val(RS.Fields(3).Value) + Zgc) > GC * Sqr(Val(RS.Fields(4).Value) * 0.001) ‘對向高差檢查。

    4.3平差文件、導線觀測手簿

    (1)平差文件

    Set RS = db.OpenRecordset("select測站.ID,測站名, 方向名,水平角,高差,平距 from 中值,測站 WHERE 測站.ID=中值.ID")‘讀取水平角、高差、平距信息。

    RS.MoveFirst

    Do Until RS.EOF

    ‘對每行記錄進行分解后,存在相應的字段。

    RS.MoveNext

    Loop

    Shell App.Path & "NASEW.EXE " & FILSAVE, vbNormalFocus '調用平差軟件直接打開平差文件

    (2) 導線觀測手簿

    Set wdApp = CreateObject("Word.Application")‘調用Word程序

    Set wdbok = wdApp.Documents.Open(App.Path & "圖根導線觀測手簿.doc")‘調用模板文件

    Set wdBook = wdApp.Documents.Add‘新建word文件

    Set RS = db.OpenRecordset("select測站.ID,測站名, 儀器高, 方向名, 水平角盤左, 水平角盤右, RC, 方向值, 水平角中數(shù), 垂直角盤左, 垂直角盤右, 指標差, 垂直角, 覘標高, 邊長讀數(shù)1, 讀數(shù)2, 邊長值 from 方向點,測站 WHERE 測站.ID=方向點.ID and 測站.文件號=1" ) ‘導線觀測手簿的信息

    RS.MoveFirst

    Do Until RS.EOF

    With wdBook.Tables(TabCount)

    .Cell(i, 2).Range.InsertAfter Format(RS.Fields(3).Value, ">") '方向名

    .Cell(i, 3).Range.InsertAfter Replace(Format(RS.Fields(4).Value, "###0.00 00"), ".", " ") '水平角盤左

    ………將讀取的數(shù)據(jù)填入到WORD表格中

    End With

    RS.MoveNext

    Loop

    wdBook.Save保存文件

    wdBook.Close關閉文件

    wdbok.Close關閉模板文件

    wdApp.Quit退出Word程序

    5 結束語

    全站儀內外業(yè)一體化圖根導線測量減少了聽、寫、計算、錄入等人工環(huán)節(jié),避免了因為人工記錄或錄入造成的粗差,此種作業(yè)方法成本低,簡便易行,作業(yè)成果準確可靠,大大的減輕測量人員的勞動強度,更好的提高測繪工作效率和產(chǎn)品質量。

    參考文獻:

    [1] 趙學慧,趙瑋.Visual Basic 程序開發(fā)完整實例教程.北京.海洋出版社,2003.

    [2] 王成春,蕭雅云.Access 2003 VBA程序設計.北京.中國鐵道出版社,2005.

    猜你喜歡
    全站儀邊長導線
    淺析110kV到500kV架空輸電線路中新型導線的應用
    魔術存錢罐
    大樓在移動
    全站儀在金屬礦地面控制測量中的應用探討
    全站儀在工程放線驗線中的應用分析
    全球首條大截面超高壓碳纖維導線試驗成功
    淺談全站儀在建筑測量質量控制中的應用研究
    一個關于三角形邊長的不等式鏈
    廣州SCS G2004接收全站儀數(shù)據(jù)過程的相異性分析
    2009年高考物理專項訓練題八 穩(wěn)恒電流
    榕江县| 萝北县| 阿克苏市| 延边| 眉山市| 广元市| 新和县| 石门县| 墨竹工卡县| 南皮县| 巴楚县| 本溪市| 隆子县| 邹平县| 平谷区| 华池县| 晋中市| 广灵县| 广安市| 白山市| 达日县| 濮阳市| 攀枝花市| 江安县| 泰和县| 淅川县| 定州市| 铜梁县| 长寿区| 苍南县| 大同市| 张家川| 康平县| 鹿泉市| 韶关市| 福建省| 梅州市| 阳原县| 双城市| 老河口市| 清水河县|