ペイントアプリまとめレポート
1、アプリの機能
*ペイントツール:ブラシ、消しゴム、定規、ディバイダー、カラーピッカー(ブラシの太さを選択できる、カラー160種類選択できる)
*操作の機能:元に戻す、やり直す、スケッチブックをクリアする、絵を保存する、既存の絵を開く、新規スケッチブック、SNSで絵をシェアする。
2、開発中難しい点、時間かかった点
1)モデルの設計(各クラスの役割、データ値の転送など)
開発途中で修正したことがありましたけど、最後のモデルは以上のように決めました。
2)線の引き方
最初のやり方は:touchesBeganでタッチしたときのイベントを取得、touchesMovedで指を動かしたときのイベントを取得、touchesEndedで指がスクリーンを離したときのイベントを取得する。そして、beginPointとendPointの間、CGContextAddLineToPointで直線を描く。この方法の欠点は、ゆっくり指を移動するとスムーズに見えますが、移動のスピードが速いとスムーズになれない。そこで以下のように改善しました。
*直線の変わりに曲線を描く
*配列samplePointsで全ての点を記録します。
*beginPointとendPointの間ではなく、中間点を計算し、曲線で繋がる。
二次元の曲線は、コントロールポイント一つだけです。
三次元のベッセル曲線は、二つのコントロールポイントを使うので、曲線はもっと自然に見える。コントロールポイントの座標の計算が必要になります。
3、気づきと感想
初iphoneアプリ開発は楽しかったです。swift言語は使いやすいし、リファレンスを読みながら、開発を進めました。順調な時もありましたけど、寄り道をしたり、苦戦しったり時間がかかった場合もあります。興味を持ち言語でいろんな種類のアプリを開発してみて、経験を積みたいです。まだまだ勉強
日々感謝!