趙紅星 呂贊寅
中圖分類號:TP317.1文獻標識碼:A文章編號:1673-0992(2009)05-040-01
摘要對利用EXCEL電子表格進行高斯投影換算的方法進行了詳細的介紹,提出了一種簡單實用的坐標轉換方法。
關鍵詞:電子表格;坐標轉換
一、引言
隨著手持式GPS的逐漸推廣,GPS在地質普查、礦業開發等領域的應用越來越廣泛,許多時候都需要粗略測定點位坐標,這就涉及到了坐標換算問題。對于非測量專業的工作人員來說,雖然GPS定位操作非常容易,但坐標轉換則難以掌握。EXCEL是比較普及的電子表格軟件,能夠處理較復雜的數學運算,用它來進行GPS坐標轉換會非常輕松自如。要進行坐標轉換,離不開高斯投影換算,下面介紹用EXCEL進行換算的方法。
二、用EXCEL進行高斯投影換算
從經緯度BL換算到高斯平面直角坐標XY(高斯投影正算),或從XY換算成BL(高斯投影反算),一般需要專用計算機軟件完成,在目前流行的換算軟件中,存在有以下的不足之處:
1.個別計算程序設計過于專業,坐標轉換參數過多,對于非專業人員來說,難于上手。
2.多數計算程序每次只能計算一個點,計算結果需要手工記錄下來,很不方便。
3.坐標轉換涉及到推算3度帶、6度帶中央子午線,以及Y坐標的改化問題,給非專業人員帶來不便。
筆者發現,用EXCEL可以很直觀、方便地完成坐標換算工作,不需要編制任何軟件,只需要在EXCEL的相應單元格中輸入相應的公式即可。使用時,輸入緯度BL數據后,相應的坐標數據即可計算出來,省去了中間過程。計算成果即可用打印機輸出,避免了手工抄錄,同時方便了計算機數據存儲。下面以54系坐標為例,介紹具體的計算方法。
完成經緯度BL到平面直角坐標XY的換算,在EXCEL中需要占用22列,當然讀者可以通過簡化計算公式或考慮直觀性,適當增加或減少所占列數。在EXCEL中,輸入公式的起始單元格不同,則反映出來的公式不同,以公式從第2行第1列(A2格)為起始單元格為例,各單元格的公式如下:
單元格
單元格內容
說明
A2
=U2*3
自動計算出該點所在3度帶的中央子午線
B2
=INT(A2)+(INT(A2*100)-INT(A2)*100)/60+(A2*10000-INT(A2*100)*100)/3600
將中央子午線轉化為度
C2
以度小數形式輸入緯度值,如38°14′20″則輸入38.1420
起算數據大地緯度B
D2
以度小數形式輸入經度值,如111°35′15″則輸入111.3515
起算數據大地經度L
E2
=INT(C2)+(INT(C2*100)-INT(C2)*100)/60+(C2*10000-INT(C2*100)*100)/3600
把B化成度
F2
=INT(D2)+(INT(D2*100)-INT(D2)*100)/60+(D2*10000-INT(D2*100)*100)/3600
把L化成度
G2
=F2-B2
L-L0
H2
=G2/57.2957795130823
化作弧度
I2
=TAN(RADIANS(E2))
Tan(B)
J2
=COS(RADIANS(E2))
COS(B)
K2
=0.006738525415*J2*J2
L2
=I2*I2
M2
=1+K2
N2
=6399698.9018/SQRT(M2)
O2
=H2*H2*J2*J2
P2
=I2*J2
Q2
=P2*P2
R2
=(32005.78006+Q2*(133.92133+Q2*0.7031))
S2
=6367558.49686*E2/57.29577951308-P2*J2*R2+((((L2-58)*L2+61)*O2/30+(4*K2+5)*M2-L2)*O2/12+1)*N2*I2*O2/2
計算結果X
T2
=((((L2-18)*L2-(58*L2-14)*K2+5)*O2/20+M2-L2)*O2/6+1)*N2*(H2*J2)
計算結果Y的初步結果
U2
=INT((F2-1.5)/3)+1
計算3度帶的帶號
V2
=U2*1000000+500000+T2
含帶號的Y坐標值
表中的許多單元格公式為中間過程,可以用EXCEL的列隱藏功能把這些沒有必要顯示的列隱藏起來,表面上形成標準的計算報表,使整個計算表簡單明了。我們可以隱藏B、E、F、G、H、I、J、K、L、M、N、O、P、Q、R、T列,僅保留A、C、D、S、U、V列。
則A列為中央子午線值,C列為大地緯度值,D列為大地經度值,S列為X坐標值,U列為3度帶的帶號,V列為Y坐標值。其中C、D列設為數值,小數位數10位;S、V列設為數值,小數位數3位。
表中公式的來源及軟件的操作方法,請參閱有關資料,這里不再贅述。按上面表格中的公式輸入到相應單元格后,就可方便地由經緯度求得平面直角坐標。當輸入完所有的經緯度數值后,用鼠標下拉(即使用EXCEL的填充功能)即可得到所有的計算結果。從理論上講,可計算的數據量是無限的,當第一次輸入公式后,相當于自己完成了一軟件的編制,可另存起來供今后重復使用,一勞永逸。
其他坐標系的坐標換算可依照此思路,適當修改計算公式和相關參數值,即可完成。