给定球形系统中的一个点,找到与已知直线成直角的直线
Find a line intersecting a known line at right angle, given a point in spherical system
我想计算直线 [x1, y1], [x2, y2] 与 球面几何 中给定点 [xp, xy] 的直角相交(线和点位于球体 - 地球 - 并以 latlon 形式给出)。
我的问题用一张图很容易描述:
平面上的 'flat' 几何计算公式可以在这里找到,例如:
您可以将绕球体行进的线表示为平面;直线等于平面和球体的交点。
求过点的垂线:
- 找到第一行的平面
- 将你的点投影到这个平面上
- 从三个点计算出一个新平面:您的原点、投影点和球心。
新平面表示垂直于通过该点的第一条线的线。
Pubby 在下面回答了正确的数学描述。
对于我的情况(计算距离很小,最大几公里),基于 墨卡托投影 的近似值足够准确。
您可以在此处找到包含大量代码示例的重要资源:
我想计算直线 [x1, y1], [x2, y2] 与 球面几何 中给定点 [xp, xy] 的直角相交(线和点位于球体 - 地球 - 并以 latlon 形式给出)。
我的问题用一张图很容易描述:
平面上的 'flat' 几何计算公式可以在这里找到,例如:
您可以将绕球体行进的线表示为平面;直线等于平面和球体的交点。
求过点的垂线:
- 找到第一行的平面
- 将你的点投影到这个平面上
- 从三个点计算出一个新平面:您的原点、投影点和球心。
新平面表示垂直于通过该点的第一条线的线。
Pubby 在下面回答了正确的数学描述。
对于我的情况(计算距离很小,最大几公里),基于 墨卡托投影 的近似值足够准确。
您可以在此处找到包含大量代码示例的重要资源: