这是顺时针旋转的功能。参数是我们要旋转多少度。
如何将其更改为逆时针旋转?
void rotateClockwise( int degree ) {
int currentDegree = getDegree();
int desiredDegree = currentDegree + degree;
if( desiredDegree > 359 ) {
desiredDegree -= 359;
}
do {
newDegree = getDegree(); // Returns current degree
desiredDegreeSINE = sin(desiredDegree * (PI/180));
currentDegreeSINE = sin(newDegree * (PI/180));
if( desiredDegreeSINE > 0 && currentDegreeSINE < 0 ) {
newDegree = newDegree - 360;
}
if( newDegree >= desiredDegree ) {
// Stop rotating
break;
} else {
// Keep rotating
}
} while(true);
}
我们每时每刻旋转1度。
最佳答案
void rotateCounterClockwise( int degree ) {
return rotateClockwise(360 - (360 + degree) % 360);
}