2009-05-12 4 views
1

どうしたらいいですか? x時間で値を1つずつトゥイーンしたいまた、開始時と終了時に「楽に」なることがうれしいことも考慮に入れています。ルアで値をトゥイーン化する

私は本当に尋ねるべきではありませんが、私は自分自身を試して、私は立ち往生しています。 遅延が発生するためには、function wait(time)を呼び出す必要があるとします。

+0

'Tween'?あなたは例を挙げることができますか? –

+0

彼はおそらく補間することを意味します:http://en.wikipedia.org/wiki/Tweening –

答えて

4

一つの簡単なアプローチは、単位円に沿って補間することである。これを行うには Unit circle

、あなたは単にかなりスムーズな動きを確保し、円、に沿った点を評価し、使いやすさのように簡単に外出することができます。角度を変更する速さを変更することで、補間の速度を制御することができます。

1次元補間(3.5から6.9などの単純なスカラー補間など)を行うと仮定すると、-/2〜π/2のY値を使用すると便利です。これは法的なLuaのであれば、私はそれをテストしていない、100%わからないんだけど

angle = -math.pi/2 
start = 3.5 
end = 6.9 
radius = (end - start)/2 
value = start + radius + radius * math.sin(angle) 

:これらは、正弦関数によって与えられている、あなたがする必要があるのは、適切なスケーリングを適用しています。そうでない場合は、おそらく変換するのは簡単です。

+0

解決済み!私はそれを信じることはできません、私はそれをtryedと思った... Meh、あなたは大きな助けをしてきました! –

0

あなたはインスピレーションのためにTweener ActionScript libraryを見ることができます。

たとえば、必要な数式from hereを借りることができます。

さらに助けが必要な場合は、お尋ねください。あなたのために働くかもしれない

関連する問題