3

値、イーズイン、イーズアウト、一般的なイージングカーブ、およびユーザー定義のカーブ間の非線形補間のメソッドを実装する必要があります。

私はこれを行う方法の基本的な考えを持っていますが、それが最も効率的な解決策になるかどうかはわかりません。私の考えは基本的に次のとおりです。

2D 3次、2次、またはn次のベジェ曲線を使用して補間を制御します。曲線を直線的にトラバースして非線形Y成分を取得し、それを使用して値を設定し、単純な線形補間法を提供します。

value = v1 + (v2 - v1) * t;

ここで、tは制御曲線の非線形Y成分です。

これにより、カスタムのユーザー定義の補間方法が可能になりますが、コストがかかります。1つの非線形補間のコストは次のようになります。

1 + 2 *(n-1)

内挿の合計。ここで、nは、制御曲線の制御点の次数または数です。

私は数学者ではありません、これは私が思いつくことができる最高のものです、それで私の質問はより良い解決策があるかどうかです?

編集:私はおそらくそれを正しく説明していません、私はネイティブスピーカーではないので、ここに誰もが理解することを願っています: 制御曲線補間

4

1 に答える 1

3

私が理解していることから、あなたtは実際には関数f i(u)のファミリーであり、uf i(u)の両方が0から1の間です。その場合、それはあなたよりも良くなることはありません。すでに提案しました。

実際の曲線計算中にこれらのfi ( u値を評価することを心配しているようです。事前に計算したくない場合は、評価を回避することはできません。パフォーマンスが大きな問題であり、非常に正確である必要がない場合は、必要な数のu j値(たとえば、0と1の間の100または1000の離散点)のf i(u jのテーブルを計算できます。各曲線、およびサンプリングポイント間に値が必要な場合は、目的のポイントの周囲にある2つのキャッシュされた値の単純な線形補間を実行します。

于 2012-04-10T21:33:39.323 に答える