Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rotation 球员应该朝哪个方向旋转?_Rotation_Angle - Fatal编程技术网

Rotation 球员应该朝哪个方向旋转?

Rotation 球员应该朝哪个方向旋转?,rotation,angle,Rotation,Angle,我有两个角度,当前角度和目标角度。两个角度都在[0,360]之间。我需要一行代码来告诉我旋转的方式,从currentAngle开始,以最便宜的方式到达goalAngle,旋转+1度或-1度需要1美元 下面是我的代码的样子: if( ??? ) { rotateClockwise(); } else { rotateCounterclockwise(); } 函数旋转为顺时针() { 警报(“顺时针”); } 函数按逆时针方向旋转() { 警报(“逆时针”); } 功能计算(当前角度、目标)

我有两个角度,当前角度和目标角度。两个角度都在[0,360]之间。我需要一行代码来告诉我旋转的方式,从currentAngle开始,以最便宜的方式到达goalAngle,旋转+1度或-1度需要1美元

下面是我的代码的样子:

if( ??? ) { rotateClockwise(); }
else { rotateCounterclockwise(); }

函数旋转为顺时针()
{
警报(“顺时针”);
}
函数按逆时针方向旋转()
{
警报(“逆时针”);
}
功能计算(当前角度、目标)
{
if(isNaN(currentAngle)| isNaN(goalAngle)){alert('invalid angles');返回false;}
var diff=当前角度目标;
而(diff<-180)diff+=360;
而(diff>180)diff-=360;
如果(差异

函数旋转为顺时针()
{
警报(“顺时针”);
}
函数按逆时针方向旋转()
{
警报(“逆时针”);
}
功能计算(当前角度、目标)
{
if(isNaN(currentAngle)| isNaN(goalAngle)){alert('invalid angles');返回false;}
var diff=当前角度目标;
而(diff<-180)diff+=360;
而(diff>180)diff-=360;
如果(diff
//给定玩家的旋转方向,计算玩家应该旋转的方向(如果有)。
if(Math.abs(goalAngle-super.getRotY())>旋转精度){
if(Math.abs(goalAngle-super.getRotY())<180){
if(goalAngle-super.getRotY()<0){super.increaseRotation(0,-super.getTurnSpeed(),0);}
else{super.increaseRotation(0,super.getTurnSpeed(),0);}
否则{
if(goalAngle-super.getRotY()<0){super.increaseRotation(0,super.getTurnSpeed(),0);}
else{super.increaseRotation(0,-super.getTurnSpeed(),0);}}
//给定玩家的旋转方向,计算玩家应该旋转的方向(如果有)。
if(Math.abs(goalAngle-super.getRotY())>旋转精度){
if(Math.abs(goalAngle-super.getRotY())<180){
if(goalAngle-super.getRotY()<0){super.increaseRotation(0,-super.getTurnSpeed(),0);}
else{super.increaseRotation(0,super.getTurnSpeed(),0);}
否则{
if(goalAngle-super.getRotY()<0){super.increaseRotation(0,super.getTurnSpeed(),0);}
else{super.increaseRotation(0,-super.getTurnSpeed(),0);}}
        // Given the player's rotation, calculate which direction the player should rotate, if any.
    if(Math.abs(goalAngle - super.getRotY()) > ROTATION_ACCURACY){
        if(Math.abs(goalAngle - super.getRotY()) < 180){
            if(goalAngle - super.getRotY() < 0){ super.increaseRotation(0, -super.getTurnSpeed(), 0); }
            else{ super.increaseRotation(0, super.getTurnSpeed(), 0); } }
        else{ 
            if(goalAngle - super.getRotY() < 0){ super.increaseRotation(0, super.getTurnSpeed(), 0); }
            else{ super.increaseRotation(0, -super.getTurnSpeed(), 0); } } }