時計回りの回転機能です。パラメータは回転させたい度数です。 どのように反時計回りに変更できますか?反時計回りの回転方法
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度ずつ回転しています。
まず、あなたはdesiredDegreeを使用する必要があります - = 360と正弦は何ですか? – user4759923
'newDegree
どのようにローテーションを行いますか?確かにあなたは回転のために負の角度と角度> = 360の両方を使うことができます、コンピュータはそれらを恐れていません!人間の読書やデバイスのために本当に '0..359'の角度が必要な場合、'(angle%360) ' – MBo