逆円運動に関する問い合わせがあります。私は以下のコードを持っています。ケース1は時計回りの円運動であり、ケース2は反時計回りです。ケース1とケース2との間の切り替えは、ユーザタッチで行われる。時計回りから反時計回りに切り替えると、sin()とcos()の同じ値(timer/1.5)が使用されます。これは、私の惑星上の別の位置から反時計回りの動きを開始させます。反時計回りの動きが時計回りの動きの途中で途切れるところから開始して滑らかな遷移をするために、私のタイマーに必要な値を計算したいと思います。私の心が詰まっているので、誰かがこれについて正しい数学を知っていますか?ありがとう逆円運動
以下のコードのちょっとした説明私はロボットが惑星のx座標とy座標をとり、惑星半径+ 55の半径で円運動を実行することでロボットの位置を計算しています私のスプライトの快適な高さです)。
case 1:
positionX = AttachedPlanet.positionX + sin(timer/1.5)*(AttachedPlanet.planetRadius + 55);
positionY = AttachedPlanet.positionY + cos(timer/1.5)*(AttachedPlanet.planetRadius + 55);
timer = timer + 0.02;
break;
case 2:
positionX = AttachedPlanet.positionX + cos(timer/1.5)*(AttachedPlanet.planetRadius + 55);
positionY = AttachedPlanet.positionY + sin(timer/1.5)*(AttachedPlanet.planetRadius + 55);
timer = timer + 0.02;
私はそれを逃したのですか?返信いただきありがとうございます!私は頭がループに詰まっていたと思う:D。私は同じ機能を使用して、追加のタイマーを追加することに決めました。乾杯。 – STDE