2012-04-09 6 views
0

3Dでスムーズなカメラトランジションを行い、カメラのトランジションを処理する小さなライブラリを使用しています。BeziérコントロールポイントをCatmull-Romコントロールポイントに変換する

残念ながら、Catmull-Romトランジションのみを実行します。私は出版物からいくつかの情報を使用しており、彼らは彼らの移行のためにベジエ曲線を使用しています。

私の質問は次のとおりです。ベジエコントロールポイントのセットを指定すると、次のようになります。どのようにしてCatmull-Romポイントに変換できますか?

可能であれば、私はこのライブラリを使用することができます。さもなければ、ベジエ曲線をゼロから実装する必要があります。

UPDATE
私は、コントロールポイント自体は大丈夫であることを言及する必要があります。曲線はまったく同じである必要はありません。同じ振る舞いだけが望まれます。

答えて

0

Catmull-Romは、解析される一対の点の接点を使用して接線を作成しますが、ベジェ曲線は点ごとに与えられた接線データを使用します。したがって、原則として、ベジエ曲線上のポイントをサンプリングして、各既存ポイントのいずれかの側で、Catmull-Rom曲線が使用する暗黙的に生成された正接データを「偽造」することはできませんか?

+0

はい、私はそれを考えましたが、それはまだポイントをサンプリングするBeziérアルゴリズムを実装する必要があることを意味します。 Beziér曲線上に1つの近似点しか表示されない場合は、私も満足しています。 – Marnix

+0

私はそれを自分でやることに決めました。唯一の立方体Beziérであるので、これはそれほど難しい作業ではありませんでした。一般化されたフォームはいいかもしれませんが、カーブを実装することはシステムではあまり難しくありませんでした。 – Marnix

関連する問題