WPF 3D Rotater 更新

WPF で 3D 横回転アニメーションエフェクトのサンプルコードを更新しました。

VisualStudio2008SP1のソリューション


見た目は変わっていません。修正点は 3D まわりの XAML をシンプルにした、いくつかの問題対処、コマンドを一つにしてより簡単に使えるようにしたというあたり。あいかわらず参考程度にどうぞ。

主なファイルも個別にアップしました。

Rotater3DTransition ってコントロールが 3D 横回転で、くるっとまわって見せるやつです。これを配置して、その Front と Back に表側と裏側のコントロールを置いて使います。回転させるには、Rotater3DTransition.RotateCommand コマンドを実行します。
最初は表が見えていて裏は隠れてます。で、コマンドで回転させると今度は裏が見えて表が隠れます。回転するアニメは 2D の表と裏の見た目を 3D の板に書いて、その板を回してます。
問題なのはこないだも書いたように、2D の見た目と 3D の見た目のサイズが変わってしまうこと。このデモでは Front に載せている Grid のサイズが 218x202 になってて、アニメを始めるとき 3D に差し替えた板の見た目のサイズをカメラの位置と横の倍率でぴったりに見えるように調整してあります。これが Grid のサイズが変わると、またカメラ位置と横倍率を同じ大きさになるように調整してやらないといけなかったりします。どーにか自動でできないものかな…。