gps使用的wgs-84属于什么坐标系,wgs84坐标系是地理坐标系么
大地坐标显示顺序为纬度b . _经度我的标高h。对
空间直角坐标表示方法:x和z
进行地图投影等同于将嗯,嗯变换为坐标公司,涉及两个椭圆体和坐标系之间的变换,本文主要讨论WGS84战斗机坐标系下嗯,嗯和坐标公司的相互变换方法。
WGS84战斗机坐标系参数:
已知长轴a=6378137,
符合WGS84战斗机的椭圆体扁平率:f=1/298 . 2223636363637
椭圆体扁平率f=(a-b )/a可以求出第二,
椭球第一位心率:ee=(aa-bb )/aa,带入可求然后呢
w代表是第一辅助系数:w=(1-Esinb ) b是纬度
n个是椭圆曲率半径:N=a/W
用python(python语言)码写:
importmathdefget _ coordinate(高程、经度、高程):b=数学。弧度)纬度;l=数学弧度(经度);h=高程;f=1/298.257223563;r=6378137 b=r *(1-f);e=math.sqrt(2*f-f*f):n=r/math。sqrt(1-e * e *数学。sin(b)(b)*数学。罪));日期=[(n(h)]数学。数学。cos(b)NH)]数学。cos(b))数学。sin(l n *)]e]返回数据Java(Java)语言是用以下方法编写的。
public static double[]get _ coordinate(双纬度,双长度,双高度)doubleb=math。tora dians)doubleb=r *(1-f),e=math。sqrt(2 * f-f * f);doublen=r/math。sqrt(1-e * e *数学。sin)(b)数学。sin(b));x=(NH)数学。cos)b)数学。cos)l;y=(NH)数学。cos)b)数学。sin(l);z=(n *(1-e * e(h))数学。sin)b;双[]数据={x,y,z };返回数据;}这里完成了WGS84战斗机坐标系向大地坐标系的转换,但大地坐标系的逆解WGS84战斗机坐标系很复杂
我们可以直接根据-xy-好的求出我会的经度,但关于纬度和高程求解很复杂。
这里可以用简单的方法使计算最简单。我们把n个看作不变的,计算前后的全球定位系统坐标。步骤如下。
python(python语言):
defreturn_GPS(m,n,q):f=1/298.257223563;a=6378137 b=a *(1-f);e=math.sqrt(2*f-f*f):l=math。数学。pi;b=数学。阿坦(数学。cos(l)q/m/)1-n * e * e/)n 40.0038);h=(m/数学。cos(l)/数学。cos(b)-n/数学。sin(l)/数学。cos(b)-n)/2;L1=l/数学。pi * 180B1=b/数学。pi * 180日期=[B1,L1,h];返回数据;Java(Java):
公共静态双[ ]返回位置(双n,双n,双q(双f=1/298。257223563,a=6378137);doubleb=a*(1-f),e=math。sqrt)2 * f-f * f;doubleL=math.atan(n/m)数学.pi;doubleb=数学。阿坦(数学。cos(l)q/m/(1-n * e * e/)n 40.0038))doubleh=(m/math。cos(l)/math)双L1=l/math .PI*180,B1=B/Math .圆周率* 180双[]数据={B1,L1,h };返回数据;}可以大幅简化计算。