首页 > 编程知识 正文

WGS84 与 北京54 坐标系互转

时间:2023-05-05 05:24:09 阅读:220584 作者:2813

原文链接:http://winn.blog.163.com/blog/static/6249512012112064159555/

一、WGS84系统转北京54系统

1、把从GPS中接收到84坐标系下的大地坐标(经纬度高程B、L, H,其中B为纬度,L为经度,H为高程),使用84坐标系的椭球参数转换为84坐标系下的地心直角坐标(空间坐标):

X=(N+H)cosB * CosL 

Y=(N+H)cosB* sinL 

Z=[N(1-e2)+H]* sinB

其中N为法线长度,计算公式为N=a/sqrt(l—e2*sin2B),a为椭球体长轴半径,e为第一偏心率。

84坐标系地球参数为:

椭圆长半径a: 6378137.00

第一偏心率e2:  0.006 694 379 901 3

2、使用七参数转换为54坐标系下的地心直角坐标:

    X = △X + k*x - β*z + γ*y + x

    Y = △Y + k*y + α*z - γ*x + y

    Z = △Z + k*z - α*y + β*x + z

其中,

△X  △Y  △Z——三个坐标方向的平移参数;

α β γ——三个方向的旋转角参数

k——尺度参数

在小范围内可使用七参数的特殊形式即三参数,即k、α、β、γ都等于0,变成:

   X = △X + x

    Y = △Y + y

    Z = △Z + z

 

3、使用54坐标系的椭球参数转换为54坐标系下的大地坐标(B, L, H):

      L=arctan(Y/X)


但大地纬度B的计算比较复杂,通常采用迭代法:


上式右端有待定量B ,需迭代计算,迭代时可取


用B的初值B1计算N1和sin B1,将上式进行第二次迭代直至最后两次B 值之差小于允许误差为止。

计算出了B值,大地高也可得出:


北京54坐标系地球参数为:

椭圆长半径a: 6378245.0

第一偏心率e2:  0.006 693 421 622 965 949

二、北京54系统转WGS84系统

过程与WGS84转北京54相同,但要注意三个平移参数要改变符号,即从加法变减法,计算空间坐标或从空间坐标计算大地坐标时要用对地球参数。

以上计算可在excel中实现。

计算例子:

1、从WGS84转到北京54:

WGS84纬度

WGS84经度

WGS84高程

北京54纬度

北京54经度

北京54高程

37.3449

115.1235

100

37.34498051

115.1237245

-117.6166

角度用度.分分秒秒形式表示,37.34498051代表37°34’49.8051”

本地转换参数为:

DX:

-5.9

DY:

-116.8

DZ:

-44.5

2、从北京54 到WGS84:

北京54纬度

北京54经度

北京54高程

WGS84纬度

WGS84经度

WGS84高程

37.3449805

115.123725

-117.6166

37.34489859

115.1235000

100.5643619

 


版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。