私の現在の目標は、iOS アプリで画像の描画をアニメーション化して、ユーザーが画面でhttp://www.youtube.com/watch?v=xlDmk5WdaHkのようなことが起こっているのを見ることができるようにすることです。
描画の加速は時間とともに変化するため、 と を使用CAKeyFrameAnimation
してアニメーションを作成しkeyTimes
ました。現時点では、描画のすべてのポイントを指定するベジエ パスが 1 つしかありません。そのパスをCAShapeLayer
オブジェクトに追加し、アニメーションを開始するときにそのパスをアニメーション オブジェクトに渡します。
私の問題:完成した図面がすぐに画面に表示され、ペン カーソルがkeyTimes
値に従って画像に沿って移動します。ビデオ。
この SO の質問に気付きました。推奨される解決策は、アニメーションのすべてのポイントに対して個別のパスを生成することでした: How to Animate CoreGraphics Drawing of Shape Using CAKeyframeAnimation
100 ~ 300 個の個別のポイントがある場合、次の形式のパスを使用して数百のパス (各パスに数百の値を持つ) の配列を作成するよりも、時変図面を作成するより効率的な方法はありますか?
path0 = point0...point0...point0...point0...
path1 = point0...point1...point1...point1...
path2 = point0...point1...point2...point2...
path3 = point0...point1...point2...point3...
次に、そのパスの配列を取り、それを my ?に渡してmyAnimation.values
アニメーション化します。それとも、これが本当に最善の方法ですか?values
keyTimes
前もって感謝します