Math 角度在两个角度之间吗

Math 角度在两个角度之间吗,math,Math,我有三个角 a=315 b=20 c=45 好的,我想知道如果b在a和c之间,给出所有三个 我还有很长的路要走,加减法看起来很有效。我只想买一些更小,也许更高效的 谢谢 编辑 这是我想说的一幅图 好的,我有角度L,现在是0,我加45或任何角度,减去45或任何角度,得到我的视角a和b 现在我需要知道绿点是否在a和b之间 g> a | | g>0和&gc,您实际上会使用: ( b < a ) && ( b > c ) 这与检查值是否介于下限和上限之间相同。它们是角度没有

我有三个角

a=315 b=20 c=45

好的,我想知道如果b在a和c之间,给出所有三个

我还有很长的路要走,加减法看起来很有效。我只想买一些更小,也许更高效的

谢谢

编辑

这是我想说的一幅图

好的,我有角度L,现在是0,我加45或任何角度,减去45或任何角度,得到我的视角a和b

现在我需要知道绿点是否在a和b之间

g> a | | g>0和&g 因此,在这张图片中,只有顶部的绿点是真的

对不起,如果我没有澄清我的第一语言不是英语

假设a>c,您实际上会使用:

( b < a ) && ( b > c )
这与检查值是否介于下限和上限之间相同。它们是角度没有什么区别,除非你想考虑到这样一个事实,当你绕一个圆走的时候,405的角度和45的角度是一样的。在这种情况下,您可以使用%360来获得0和360之间的角度。

假设a>c,您实际上可以使用:

( b < a ) && ( b > c )

这与检查值是否介于下限和上限之间相同。它们是角度没有什么区别,除非你想考虑到这样一个事实,当你绕一个圆走的时候,405的角度和45的角度是一样的。在这种情况下,您可以使用%360来获得0和360之间的角度。

我遇到了类似的问题。我得到了它。所有的计算都以度为单位。 我需要计算一个gps位置在矩形内的id

或者,我需要看看角度x是否在角度检查+r和角度检查-r之间


check-r我也有类似的问题。我得到了它。所有的计算都以度为单位。 我需要计算一个gps位置在矩形内的id

或者,我需要看看角度x是否在角度检查+r和角度检查-r之间

第一关,每个角度都在另外两个角度之间,你真正想问的是:

对于给定的角度:a、b和g,g是否在a和b之间的反射角之外? 您可以继续,将a定义为最左边的角度,将b定义为最右边的角度,或者您可以对此进行求解,例如,如果以下任一语句为真,则a是最左边的角度:

A.≤ B∧ b-a≤ π a>b∧ a-b≥ π 为了简单起见,假设你的最左边的角度是l,最右边的角度是r,你试图找出g是否在它们之间

这里的问题是这个问题。我们正在寻找的基本上有3个阳性病例:

L≤ G≤ R L≤ G∧ r
a <= g && g <= b ||
a <= g && b < a ||
g <= b && b < a
if(a <= b) {
    if(b - a <= PI) {
        return a <= g && g <= b;
    } else {
        return b <= g || g <= a;
    }
} else {
    if(a - b <= PI) {
        return b <= g && g <= a;
    } else {
        return a <= g || g <= b;
    }
}
然而,如果你计算了l和r,你会注意到同时进行这两个过程有一个优化的机会。您的函数将如下所示:

a <= g && g <= b ||
a <= g && b < a ||
g <= b && b < a
if(a <= b) {
    if(b - a <= PI) {
        return a <= g && g <= b;
    } else {
        return b <= g || g <= a;
    }
} else {
    if(a - b <= PI) {
        return b <= g && g <= a;
    } else {
        return a <= g || g <= b;
    }
}
或者,如果您需要,您可以扩展到这种噩梦状态:

a <= b ?
(b - a <= PI && a <= g && g <= b) || (b - a > PI && (b <= g || g <= a)) :
(a - b <= PI && b <= g && g <= a) || (a - b > PI && (a <= g || g <= b))
请注意,所有这些数学假设您的输入以弧度为单位,范围为[0:2π]

首先,每个角度都在另外两个角度之间,你真正想问的是:

对于给定的角度:a、b和g,g是否在a和b之间的反射角之外? 您可以继续,将a定义为最左边的角度,将b定义为最右边的角度,或者您可以对此进行求解,例如,如果以下任一语句为真,则a是最左边的角度:

A.≤ B∧ b-a≤ π a>b∧ a-b≥ π 为了简单起见,假设你的最左边的角度是l,最右边的角度是r,你试图找出g是否在它们之间

这里的问题是这个问题。我们正在寻找的基本上有3个阳性病例:

L≤ G≤ R L≤ G∧ r
a <= g && g <= b ||
a <= g && b < a ||
g <= b && b < a
if(a <= b) {
    if(b - a <= PI) {
        return a <= g && g <= b;
    } else {
        return b <= g || g <= a;
    }
} else {
    if(a - b <= PI) {
        return b <= g && g <= a;
    } else {
        return a <= g || g <= b;
    }
}
然而,如果你计算了l和r,你会注意到同时进行这两个过程有一个优化的机会。您的函数将如下所示:

a <= g && g <= b ||
a <= g && b < a ||
g <= b && b < a
if(a <= b) {
    if(b - a <= PI) {
        return a <= g && g <= b;
    } else {
        return b <= g || g <= a;
    }
} else {
    if(a - b <= PI) {
        return b <= g && g <= a;
    } else {
        return a <= g || g <= b;
    }
}
或者,如果您需要,您可以扩展到这种噩梦状态:

a <= b ?
(b - a <= PI && a <= g && g <= b) || (b - a > PI && (b <= g || g <= a)) :
(a - b <= PI && b <= g && g <= a) || (a - b > PI && (a <= g || g <= b))
请注意,所有这些数学假设您的输入以弧度为单位,范围为[0:2π]


我个人最近也遇到了同样的问题,并且找到了所有答案的反例,所以我将分享我自己的方法。 设a为开始角,b为结束角,我们检查c是否在它们之间,顺时针方向,这意味着当你从a到b时,你必须通过c。当b大于a时,检查c是否在a到b的范围内的方法会给出误报。例如:
a=80°、b=320°和c=150°:a我个人最近也遇到了同样的问题,并找到了所有已发布答案的反例,因此我将分享我自己的方法。 让a为开始角,b为结束角,我们检查c是否在它们之间,顺时针,这意味着当你从a到b 你必须通过c。当b大于a时,检查c是否在a到b的范围内的方法会给出误报。例如:
a=80°,b=320°,c=150°:a介于两者之间是什么意思?测试是a>b>c还是ab>c还是a