找到這個經緯度bl換算到高斯平面直角座標xy的簡單演算法(她用excel算的,正好是乙個個步驟,翻過來就是了):
從經緯度bl換算到高斯平面直角座標xy(高斯投影正算),或從xy換算成bl(高斯投影反算)
完成經緯度bl到平面直角座標xy的換算,在excel中大約需要占用21列。在excel中,輸入公式的起始單元格不同,則反映出來的公式不同,以公式從第2行第1列(a2格)為起始單元格為例,各單元格的公式如下:
單元格單元格內容
說明a2
輸入**子午線,以度.分秒形式輸入,如115度30分則輸入115.30
起算資料l0
b2=int(a2)+(int(a2*100)-int(a2)*100)/60+(a2*10000-int(a2*100)*100)/3600
把l0化成度
c2以度小數形式輸入緯度值,如38°14′20″則輸入38.1420
起算資料b
d2以度小數形式輸入經度值
起算資料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
gdal座標變換(x,y變經緯度)
最近因為一些原因需要讀取地理資料,我使用的工具是gdal,在處理資料的時候遇到一些小的問題,自己折騰了會兒,現在分享出來,避免大家浪費時間。include gdal priv.h include ogrsf frmts.h include gdal.h include ogr srs api.h i...
不同座標系經緯度轉換演算法(JS)
墨卡托投影座標轉經緯度 export function mercatortolonlat mercator var x mercator.x 20037508.34 180 var y mercator.y 20037508.34 180 y 180 math.pi 2 math.atan math...
MATLAB程式實現經緯度轉換成平面座標
近期搜了下經緯度座標轉換成直角座標的程式和原理啥的,哎,真難啊,其實道理都懂吧,下面直接貼 主要是加了個for迴圈而言,優化輸出效果。matlab程式實現經緯度轉換成平面爾座標 m pi 3.14159265358979323846 l 6381372 m pi 2 地球周長 w l 平面展開後,x...