Math 确定方位角是否在两个给定方位角之间

Math 确定方位角是否在两个给定方位角之间,math,geometry,linear-algebra,Math,Geometry,Linear Algebra,方位角是直线在北极/轴线与自身之间形成的角度。如果以圆形路径旋转,它们可以从0度到360度不等。假设我们有两个这样的方位角,α和β。我们希望确定另一个方位角,比如伽马,落在两个方位角α和β之间 有人能帮我用一个简单的算法或公式来确定伽马对应的线是否在阿尔法和贝塔对应的两行之间。gamma可以采用不同的值 感谢当两个表达式都满足以下条件时,Gamma位于对应于alpha和beta的两行之间: ag = atan2(cos(a)*sin(g)-sin(a)*cos(g), cos(a)*cos(g)

方位角是直线在北极/轴线与自身之间形成的角度。如果以圆形路径旋转,它们可以从0度到360度不等。假设我们有两个这样的方位角,α和β。我们希望确定另一个方位角,比如伽马,落在两个方位角α和β之间

有人能帮我用一个简单的算法或公式来确定伽马对应的线是否在阿尔法和贝塔对应的两行之间。gamma可以采用不同的值


感谢

当两个表达式都满足以下条件时,Gamma位于对应于alpha和beta的两行之间:

ag = atan2(cos(a)*sin(g)-sin(a)*cos(g), cos(a)*cos(g)+sin(a)*sin(g))
gb = atan2(cos(g)*sin(b)-sin(g)*cos(b), cos(g)*cos(b)+sin(g)*sin(b))
-有相同的符号,
-(可能很重要-两个值都在[0..Pi]或[-Pi..0]范围内),
-它们的总和等于

ab = atan2(cos(a)*sin(b)-sin(a)*cos(b), cos(a)*cos(b)+sin(a)*sin(b))

这些表达式是方位角之间的角度,考虑到可能绕360度的角度,我不确定这个答案是否正确。当我在excel中玩弄这个时,我发现当a和b之间的角度为90度时,a和b之间的任何g都显示为正ag和正gb。在g不在A和b之间的某些情况下,ag和gb均为阴性。当g在a和b之间时,我找不到ag和gb都为负值的情况。@caps示例:
a=0,b=Pi/2,g=Pi/4。ag=atan2(0.707,0.707)=Pi/4;gb=atan2(-0.707,0.707)=-Pi/4
对于a=0,b=90,g=45(全部转换为弧度),我得到ag=45,gb=45,ab=0(从弧度转换回来后)同样,在你的例子中,ag和gb有不同的符号,即使Pi/4在0和Pi/2之间,但这个答案说如果g在a和b之间,它们应该有相同的符号。嗯,我必须重新检查快速计算。。。你是对的-
gb=atan2(0.707,0.707)=Pi/4