我正在尝试用 C++ 编写软件,它将在特定时间将卫星的 ECI 坐标转换为 2D 地球地图上的一个点。我知道 ECI 坐标很容易从 TLE 数据中获取。但它没有说明卫星位于地球上的哪个特定纬度和经度点。
我的问题是,您如何知道地球在特定时间(获得 TLE 的时间,或未来轨道传播后的时间)的方向?此外,在计算未来点时,如何考虑进动和章动的影响,以达到更高的准确度?谢谢你。
我正在尝试用 C++ 编写软件,它将在特定时间将卫星的 ECI 坐标转换为 2D 地球地图上的一个点。我知道 ECI 坐标很容易从 TLE 数据中获取。但它没有说明卫星位于地球上的哪个特定纬度和经度点。
我的问题是,您如何知道地球在特定时间(获得 TLE 的时间,或未来轨道传播后的时间)的方向?此外,在计算未来点时,如何考虑进动和章动的影响,以达到更高的准确度?谢谢你。
这是一个令人惊讶的难题。一般分两步解决:
或者,如果您愿意,您可以使用SConvert Library,它为您管理所有此类转换。它是用本机 C++ 编写的,因此应该适合您。
一些资源:
一般来说,互联网上没有很好地记录这类东西的坐标变换,所以你可能需要找一本有上述变换的书。