基本的なイージングを使用して、物事をスムーズに保つことができます。
private var degrees:Number = 2; // increase rotation by 2
private var easing:Number = .5; // easing value
private var finalDegree:Number = 90; // Degree the rotation will iterate to
...
public function wheelSpinning() : void
{
addEventListener(Event.ENTER_FRAME, startSpin);
}
public function startSpin(evt:Event):void
{
var c:Number = mc.rotation + degrees * easing;
if (c >= finalDegree)
{
/* Prevent the rotation from being greater than the
finalDegree value and remove the event listener */
mc.rotation = finalDegree;
removeEventListener(Event.ENTER_FRAME, startSpin);
}
else
{
/* Apply the easing to the rotation */
mc.rotation = c;
}
}
それらの値を試して、ニーズに合った値を見つけてください。AS3を学習している場合は、ライブラリを使用してすべてを自分でアニメーション化および作成することは避けてください。ライブラリの内部にあるものは、ここで紹介したものよりもはるかに複雑ですが、何が起こっているのかについての基本的な理解が得られます。
それ以外の場合は、この面白い数学をすべてカプセル化したライブラリを使用して、アプリケーション/ゲームのロジックについて心配することをお勧めします。GTweenやGreensockなど、たくさんのライブラリを見つけることができます。
それが役に立てば幸い。