我想知道给定角度在哪个轴四分之一处 以最有效的方式
第 1 季度: Alpha > 0 && Alpha <= 90(度)
第 2 季度: Alpha > 90 && Alpha <= 180(度)
第 3 季度: Alpha > 180 && Alpha <= 270(度)
第 4 季度: Alpha > 270 && Alpha <= 360(度)
C++代码
FORCEINLINE uint8 MapAngleToQuarter(float angle)
{
angle = (int)angle % 360;
float answer = 0;
if(angle > 0 && angle <= 90)
{
answer = 1;
}
else if(angle > 90 && angle <= 180)
{
answer = 2;
}
else if(angle > 180 && angle <= 270)
{
answer = 3;
}
else if(angle > 270 && angle <= 360)
{
answer = 4;
}
return answer;
}
我的问题:是否有更好(更有效)的方法来完成上述任务?
最佳答案
角度在 (0...360] 范围内
FORCEINLINE uint8 MapAngleToQuarter(float angle) {
int a = (int) angle;
return (a - 1)/90 + 1;
}
关于c++ - 有效识别给定角度 Angle 在哪个轴四分之一处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44509340/