java版通过轨道6根数实现计算出经纬度坐标_王威振的csdn的博客-CSDN博客 其实通过6根数计算出的经纬度信息,其实是国家大地坐标系,要经过一系列的转换。 转换如下:国家大地坐标系-》地心地固坐标系-》经纬度 place集合传的是分别是x,y,z地心地固坐标轴 public List<Double> xyzToLlh(List<Double> place) { double x = ((Double)place.get(0)).doubleValue(); double y = ((Double)place.get(1)).doubleValue(); double z = ((Double)place.get(2)).doubleValue(); double epsilon = 1.0E-15D; double d2r = 0.017453292519943295D; double r2d = 57.29577951308232D; double a = 6378137.0D; double f = 298.257223563D; double b = a - a / f; double e = Math.sqrt(a * a - b * b) / a; double curB = 0.0D; double N = 0.0D; double calB = Math.atan2(z, Math.sqrt(x * x + y * y)); for(int counter = 0; Math.abs(curB - calB) * r2d > epsilon && counter < 25; ++counter) { curB = calB; N = a / Math.sqrt(1.0D - e * e * Math.sin(calB) * Math.sin(calB)); calB = Math.atan2(z + N * e * e * Math.sin(calB), Math.sqrt(x * x + y * y)); } x = Math.atan2(y, x) * r2d; y = curB * r2d; z = z / Math.sin(curB) - N * (1.0D - e * e); place.set(0, x); place.set(1, y); place.set(2, z); return place; }
以上是计算出的经纬度信息
相关国家大地坐标系转地心地固坐标系转换请参考文章
java 实现EME2000(国家大地坐标系)转ECEF坐标系(地心地固坐标系)_王威振的csdn的博客-CSDN博客_java 大地2000
以及六根数生成经纬度区域信息请参考文章