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