1

yこの曲線でどのように計算できますか? t変数です。由来は(0|0)もちろん。

  • での接線はt=0、完全に水平t=0,5でなければなりません (傾斜 = 0)t=1
  • 基本的な数学演算子のみが利用可能 (Java / Actionscript 3)

ここに画像の説明を入力

Actionscript 3 では、フレームごとにこれを数百回計算する必要があります。したがって、計算には優れたパフォーマンスが必要です。現在、私は実際に計算の正確さに失敗しています(私は数学者ではありません)。

4

4 に答える 4

4

性能は不明ですが、

-0.5 * cos(x * 2pi) + 0.5

AS3:

y = -0.5 * Math.cos(x * 2 * Math.PI) + 0.5;

探している曲線のようです。

ここに画像の説明を入力

ここで曲線を表示または編集できます: wolfram アルファ曲線

于 2013-07-09T13:00:56.810 に答える
4

bjornson ( -0.5*cos(x) + 0.5) によって提案された関数は良さそうです。

パフォーマンスを改善するための 1 つのアイデアは、アプリケーションの開始時に、その関数のさまざまな時点での値のテーブルを作成することです。

固定タイムステップを使用する場合、必要なのはテーブルだけです。可変時間ステップがある場合は、計算している時間に最も近い 2 つの時間の間で線形補間を行うことができます。

于 2013-07-09T13:11:59.840 に答える
2
y(t) = 16 * t * t * (t - 1) * (t - 1)

私はあなたの要件を満たしていると思います

于 2013-07-09T13:21:30.817 に答える
0

私は自分のやり方を試して、多項式を思いつきました:

y = 16 * (t - 0.5)^4 - 8 * (t - 0.5)^2 + 1
y = 16 * Math.pow((t - 0.5), 4) - 8 * Math.pow((t - 0.5), 2) + 1;
// forgot to shift the curve 0.5 to the right, corrected
于 2013-07-09T13:28:35.597 に答える