我提取了一组三个坐标,我想找到它们两个向量之间的相对角度。
57.3112, 25.24871
57.31105, 25.24875
57.31086, 25.24803
例如:V1 = C1 - P1
,V2 = T1 - C1
,然后从V1
到V2
取角度。
但是我担心笛卡尔函数不会在这里剪裁,因为在实际应用中,坐标可能会跨越不同的纬度和经度。
我已经搜索过google,但是我所看到的功能无法说服我。我也在我的应用程序中尝试了一些,但是返回的角度未返回预期的结果。
对于这三个点,从视觉上推断,我希望该角度在120-140度左右。
我在地理计算方面的知识有限,这里没有任何线索。
如何计算角度?
使用this page中的公式,计算从中点到第一个点和第三个点的方位角(方位角)。>>
θ = atan2( sin Δλ ⋅ cos φ2 , cos φ1 ⋅ sin φ2 − sin φ1 ⋅ cos φ2 ⋅ cos Δλ )
where φ1,λ1 is the start point, φ2,λ2 the end point (Δλ is the difference in longitude)
我强调,对于“转角”轴承应从转折点计算-因为对于弧A-B轴承,其起点和终点会有所不同(子午或平行弧等特殊情况除外)。在下一张图片上,方向[[v
与方向u不同(球面上的最短路径称为“大圆弧”)]具有两个轴承,您可以使它们的差值知道所需的角度(不要忘记处理360度以上的过渡)