从地球上另一个位置射穿地球的射线的出口点?

计算科学 计算几何
2021-12-23 19:35:14

我有一个小型计算几何项目,我正在为非商业“艺术”装置而苦苦挣扎。这让我发疯了,我很乐意为可实施的算法/解决方案付费(如果 Stack Exchange 不允许这样做,我深表歉意 - 我看了但没有发现提供现金赏金的任何限制)。

给定地球表面上的起始位置 P1(纬度 phi1,经度 L1),计算以局部方位角 alpha1(从真北)离开起点的射线的出口点 P2(纬度 phi2,经度 L2)具有向下的高度角 beta1。

用不太正式的说法,想象一下坐在旋转的凳子上。将凳子从正北转动某个角度 alpha1。将你的手臂伸直。现在将手臂放下角度 beta1。想象一条从您的手指伸入地面的光线。想象一下这条射线直接穿过地球。这条射线从地球的哪一点 P2 出现?

注意事项和建议:

1) 作为第一种方法,建议使用球形地球模型。这里有一些有用的资源,http://www.movable-type.co.uk/scripts/latlong.html

2) “直接 Vincenty 方法”,http ://en.wikipedia.org/wiki/Vincenty%27s_formulae ,可能有用。当点 P2 已知时,它为确定方位角的相关问题提供了一种迭代方法。该方法使用地球的扁球体模型(与WGS84相同)

3) 确定 2 对 1 的准确度提高了多少。

4) 确定合并 P1 或 P2 的海拔高度是否对答案有显着影响。

1个回答

在球坐标中,这并不比求解二次方程难多少。让坐标为(r,θ,φ),(径向、经度、纬度)。如果起点是R=Rer,然后在旋转后α, 观察者指向单位向量的方向

eα=eφcosα+eθsinα,
并在旋转后β,观察者指向的方向
eβ=eαcosβersinβ.

所以在经过的线上R有方向eβ, 如果t是一个参数,线在第二个点与地球球体相交的点由二次方程给出t

Rer+teβ2=R2.
扩展向量范数,求解方程以获得另一个根对应的点,并将该点转换为球坐标,从而为您提供另一个交点的坐标。tt

如果您想改用椭圆体,则基向量和相交方程将发生变化。如果您想使用地形高度(称为),角度的变化将在的数量级上,其中是地球的半径,而将非常小。hh/RRh/R