朱向榮
(1.武警黃金第八支隊,新疆 烏魯木齊 830057)
地勘單位一般利用MapGIS、CAD或其他軟件平臺進行大比例尺工程分布及取樣平面圖制作,其成圖過程為:測量人員將野外實測工程坐標(biāo)在軟件平臺上展繪編輯,進而打印出圖或在聚酯薄膜等圖紙上手工展繪成圖,圖件交由地質(zhì)人員后,由其根據(jù)野外地質(zhì)編錄將槽探樣品位置展繪上圖,再將其掃描矢量化,形成最終電子圖件。其中作圖環(huán)節(jié)多、經(jīng)手人員多、效率不高、精度也受影響??紤]到MapGIS平臺在地質(zhì)制圖方面的優(yōu)點及其在地勘單位的普及性[1,2],以及Excel在數(shù)據(jù)存儲處理方面的優(yōu)勢,本文將這兩者結(jié)合,從而真正實現(xiàn)常見地質(zhì)工程的全數(shù)字化成圖。
MapGIS明碼文件包含所要展繪圖面內(nèi)容的全部信息,需將展繪的所有圖面信息按其規(guī)定格式編輯好,在MapGIS的“圖形處理”→“文件轉(zhuǎn)換”模塊中輸入明碼文件,即可得到展繪好的點、線、面文件。其關(guān)鍵在于計算所要表達(dá)的信息在圖中的具體坐標(biāo)位置。MapGIS點、線、面明碼文件格式(以MapGIS 6.7為例)如下[3]:
1)點文件(擴展名為“.wat”)結(jié)構(gòu)。
WMAP9022(文件頭)
n(點數(shù))
x1,y1,1,type1(此處x、y與測量上表示習(xí)慣相反,下同)
…
xi,yi,i,type1
…
xn,yn,n,type1
其中,type1為點類型(取值0~5),類型不同,點信息也不同。點類型取值及相應(yīng)點信息為(僅介紹與本文相關(guān)部分,以下同):當(dāng)type=0時,代表字符串,點信息為:("字符串",字符高度,字符寬度,字符間隔,字符串角度,中文字體,西文字體,字形,水平(0)或垂直排列(1),顏色,圖層,透明輸出);當(dāng)type=1時,代表子圖,點信息為:(子圖號,子圖高,子圖寬,子圖角度,輔色,顏色,線寬,圖層,透明輸出)。
2)線文件(擴展名為“.wal”)結(jié)構(gòu)。
WMAP9021(文件頭)
n+1(n為線數(shù))
線型號,輔助線型號,線色,線寬,X系數(shù),Y系數(shù),輔助色,圖層,透明輸出(1號線)
線點數(shù)m1
x1,y1
…
xm1,ym1
1,線長度
…
線型號,輔助線型號,線色,線寬,X系數(shù),Y系數(shù),輔助色,圖層,透明輸出(n號線)
線點數(shù)mn
x1,y1
…
xmn,ymn
n,線長度
3)區(qū)文件(擴展名為“.wap”)結(jié)構(gòu)。
WMAP9023(文件頭)
n(弧段數(shù))
線型號,輔助線型號,線色,線寬,X系數(shù),Y系數(shù),輔助色,圖層,透明輸出
前節(jié)點號,后節(jié)點號(若沒有指向任何節(jié)點,則為0)
左區(qū)號,右區(qū)號(若沒有區(qū)號,則為0)
線點數(shù)m1
x1,y1
…
xm1,ym1
ID,線長度
…
節(jié)點數(shù)nn
x1,y1
節(jié)點弧段數(shù)k
弧段號1,弧段號2,…,弧段號k
…
rn(區(qū)數(shù))
區(qū)顏色,填充圖案號,圖案高,圖案寬,筆寬,圖案顏色,圖層,透明輸出,ID,面積,周長
區(qū)數(shù)據(jù)項數(shù)n
弧段1編號 {第1項}
弧段2編號 {第2項}
…
弧段k編號 {第k項}
0 {第k+1項}
弧段k+1編號 {第k+2項}
弧段k+2編號 {第k+3項}
…
最后弧段編號 {第n項}
…
Excel2003中文電子表格具有強大的數(shù)據(jù)存儲與處理能力,使用者只要在其中事先按自身需要編制好公式,導(dǎo)入原始數(shù)據(jù)即可完成相應(yīng)計算、輸出成果。其中Excel VBA 2003是Office 2003所提供的程序語言,通過VBA程序設(shè)計,可以將很多重復(fù)的操作變?yōu)殡娔X的自動運行,減少因重復(fù)操作而帶來的出錯機會,大大提高了勞動效率、減輕了勞動強度。據(jù)此可設(shè)想將地質(zhì)工程原始坐標(biāo)數(shù)據(jù)及樣品位置信息按一定規(guī)律存儲在Excel表格中,通過事先編制的計算模板,按MapGIS明碼文件的規(guī)定結(jié)構(gòu)輸出點、線、面明碼文件。
對單點定位的地質(zhì)工程,只需將其坐標(biāo)按比例換算至圖面坐標(biāo)即可輸出相應(yīng)明碼文件,其中只需注意“子圖號”及“圖層”必須按各單位的相應(yīng)系統(tǒng)庫設(shè)置。本文主要討論槽探工程及其樣品位置展繪的數(shù)學(xué)模型。如圖1所示,假設(shè)某槽探工程由3點定位,其測量坐標(biāo)分別為(x1,y1)、(x2,y2)、(x3,y3),槽探寬為2a(a的取值根據(jù)成圖比例尺而定),轉(zhuǎn)折處寬為2b,α、α1、α2分別為相應(yīng)方位,2β為轉(zhuǎn)折角[4,5],即
圖1 槽探示意圖
則有該槽探3對拐點的坐標(biāo)分別為:
設(shè)第一個樣品HK1的端點距槽探起始端水平距為s,樣長為d1,則其4個定位點坐標(biāo)分別為:
cosα1,y21'=y11+(s+d1)sinα1,其余樣品定位點按樣長類推即可。
對槽探工程樣品位置展繪而言,可能會出現(xiàn)以下錯誤,導(dǎo)致后續(xù)繪制礦脈有誤:
1)工程號混淆導(dǎo)致此槽探樣品展繪至彼槽探;
2)樣品展繪時起始端點用反導(dǎo)致各樣品相對位置關(guān)系與實際相反;
3)測量所得長度、方位與地質(zhì)編錄長度、方位較差偏大(其中,長度偏差原因有工程號混淆或編錄時對不符合規(guī)格的槽探端沒有舍去,方位偏差原因有工程號混淆或羅盤讀數(shù)誤差偏大等),可致樣品位置與實地不符。
以上問題均會從長度、方位2方面顯示出來,只要妥善設(shè)置其限差,表格中用紅色提示相關(guān)超限工程號,測量人員與地質(zhì)編錄人員就各種可能原因進行溝通后,區(qū)別原因改正數(shù)據(jù)即可解決。假設(shè)槽探測量長度、方位分別為L、α,編錄長度、方位分別為L'、α',則長度、方位較差分別為(限差依據(jù)經(jīng)驗值而定):?L=L-L',?L≤±(2+0.01L)m,?α=αα',?α≤±4°。
如圖2所示建立表格,在單元格G1~G3中分別輸入“500、1000、2000”作為單元格F2的比例尺選擇項;在單元格G9~G18中分別輸入對應(yīng)于E9~E18各工程類別的子圖號;在單元格H9~H18中分別輸入各工程類別的圖層號;在I5輸入“=IF(A5="","",1) ”用于判斷該行是否有工程輸入;在J5輸入“=IF(A5="","",IF(L5="ZK",C5*1000/$F$2&","&B5*1000/$F$2&","&I5&",1,"&M 5&",3,3,0,0,6,0,"&N5&",0",C5*1000/$F$2&","&B5*1000/$F$2&","&I5&",1,"&M5&",3,3,0,0,1,0,"&N5&",0")) ”,用于生成子圖信息;在K5輸入“=IF(A5="","",$K$2+C5*1 000/$F$2&","&B5*1000/$F$2&","&I5+$J$1&",0,"&$L$1&A5&$L$1&",3,3,0,0,1,0,0,0,1,"&N5&",0")” ,用于生成注記信息;在J1輸入“=COUNTA(A5:A1004)”用于統(tǒng)計工程數(shù);在J1輸入“=2*J1”;在L1輸入“"”;在L5輸入“=IF(A5="","",LEFT(A5,2))”用于根據(jù)工程號判斷工程類別;在M5輸入“=IF(A5="","",VLOOKUP(L5,$F$9:$G$18,2))” ,用于根據(jù)工程類別生成子圖號;在N5 輸 入“=IF(A5="","",VLOOKUP(L5,$F$9:$H$18,3))” ,用于生成圖層號;將單元格I5~N5向下復(fù)制若干行。
圖2 單點工程數(shù)據(jù)表
控件“導(dǎo)出MapGIS明碼文件”的代碼如下[6]:
Private Sub CommandButton1_Click()
K = Range("J1")
If K > 0 Then
Open "D:單點地質(zhì)工程.wat" For Output As #1'生成交換文件
Print #1, "WMAP9022"
Print #1, 2 * K
For I = 1 To K
Range("J4").Select
A=ActiveCell.Offset(I, 0).Range("A1")
Print #1, A
Next I
For I = 1 To K
Range("K4").Select
A = ActiveCell.Offset(I, 0).Range("A1")
Print #1, A
Next I
Close #1
MsgBox "數(shù)據(jù)已成功導(dǎo)出!", 48
Else
MsgBox "無數(shù)據(jù)可導(dǎo)出!", 16
End If
End Sub
如圖3、圖4所示建立表格,按以上數(shù)學(xué)模型在表格相關(guān)欄中輸入計算公式,用于計算工程及樣品定位坐標(biāo)。同單點定位地質(zhì)工程類似,在相關(guān)單元格中按規(guī)定結(jié)構(gòu)生成點、線、面信息(因篇幅,此處不詳述)。
圖3 槽探工程數(shù)據(jù)表
圖4 樣品數(shù)據(jù)表
在Excel模板的使用時,應(yīng)注意以下問題:
1)為最大限度地提高效率,可待一個測區(qū)階段性的地質(zhì)工作完成后,一次性輸入數(shù)據(jù),一次性生成點、線、面文件;然后將文件備份,再按分幅依次與圖框套合成圖。在MapGIS中生成圖框時應(yīng)注意將“圖框參數(shù)選擇”中“將左下角平移為原點”前面的選擇框中的“√”去掉,否則會套合錯誤。
2)在輸入槽探樣品號及樣品位置時,樣品不連續(xù)處,樣品號應(yīng)為空,對應(yīng)樣品長為樣品間隔距離(此處所指長度、距離均為水平距)。
3)如1條槽探編錄中有2個或以上方位,樣品輸入時將其從轉(zhuǎn)折處分開按多條槽探分別錄入數(shù)據(jù)。
4)待全部槽探端點坐標(biāo)及編錄方位、編錄長度輸入后,如有個別工程號顯示紅色,先按“方位調(diào)整”按鈕(見圖4)消除起始端點用反的情況;若還有工程號顯示紅色,再按“誤差報告”按鈕輸出詳細(xì)的誤差報告(在D盤根目錄下),測量人員會同地質(zhì)人員根據(jù)報告反映情況查明具體原因,區(qū)別對待。
利用上述方法還可以在一個工作簿內(nèi)建立多個表格,分別存儲處理控制點數(shù)據(jù)、地質(zhì)填圖點及路線數(shù)據(jù)、礦權(quán)界址點及界線數(shù)據(jù)、勘探線批量生成等,實現(xiàn)一次處理數(shù)據(jù)能分別形成多種比例尺的相對獨立的點、線、面文件的目的,以后可根據(jù)需要進行文件組合,形成各類專題圖件。對采用CAD平臺成圖的單位,也可利用類似辦法輸出南方CASS交換文件從而實現(xiàn)快速制圖。與傳統(tǒng)方法相比,該方法的制圖效率隨數(shù)據(jù)量的增大而成倍增長,且因采用了解析法計算制圖數(shù)據(jù),完全舍去了手工展點、掃描、矢量化等作圖過程,徹底消除了內(nèi)業(yè)展繪誤差,其精度與比例尺無關(guān),只與外業(yè)精度相關(guān),從而真正實現(xiàn)了常見地質(zhì)工程的數(shù)字化制圖。
[1]谷高中,李義紅,張文軍,等.由野外實測數(shù)據(jù)直接生成MapGIS地質(zhì)基礎(chǔ)圖件方法[J].新疆地質(zhì),2006,24 (1):95-98
[2]李沙園,陳昕華,戈永怡.在MapGIS下快速實現(xiàn)柱狀剖面圖的繪制[J].物探化探計算技術(shù),2004,26(2): 173-176
[3]武漢中地數(shù)碼科技有限公司.MapGIS地理信息系統(tǒng)實用教程[M].武漢:武漢中地數(shù)碼科技有限公司,2003
[4]彭福坤,彭慶.土木工程施工測量手冊[M].北京:中國建材工業(yè)出版社,2002
[5]季斌德,邵自修.工程測量[M].北京:測繪出版社,1988
[6]王成春,蕭雅云.Excel VBA 2003程序設(shè)計實例導(dǎo)航[M].北京:中國鐵道出版社,2005