我试图将X距离(图45)的度数从一定程度上捕获(图15)。我正被卷入360/0环绕。给定的度数均归一化为0-360。有人可以告诉我该怎么做吗?我已经附上一张图片,说明我缺乏能力。
我发誓迈克尔·杰克逊的坟墓上我在搜索之前搜索了谷歌和StackOverflow的答案。我意识到这可能是一个重复,但回答的那些不能被标记或命名得恰当。
答案 0 :(得分:2)
15 + 45 = 60,所以你有那个方面,但15-45 = -30,所以你必须添加360,给330.
基本上,每次外出[0,360]时,我都会加上或减去360,我在那里使用a)作为开放范围。
如果你想编写测试来为你的标记着色为蓝色,比如说h是标题,o是偏移量,x是我们正在测试的标记,你正在寻找类似于c-ish伪代码的东西:
t=h-x
if (t>360) {t-=360}
if (t<0) {t+=360}
if (t<o) {mark blue}
答案 1 :(得分:1)
我不是100%肯定你想要实现的目标。我假设你想要的是:“对于X度,找到距离它最多Y度的所有度数,在每个标记之间给出Z度的步长。”
在这种情况下,只需将Z的增量写入从X-Y到X + Y的for循环。如果当前的度数值是&lt; 0然后只需添加360。
答案 2 :(得分:1)
为什么不简单地使用模运算?
deg = deg % 360