読者です 読者をやめる 読者になる 読者になる

asaのブログ

プログラミングの勉強まとめ

ペイントソフトの機能の書き出し

 ペイントソフト・アプリを作っています。まずは、ソフトの機能を洗い出していきます。就活までには(つまり今年一杯が目処)、ペイントツールと作品を発表できるWebサイト、あとSNSツールを作れたらいいなと思っています(無理か…?)。

 

 基本的な機能

 ほんとに基本的な機能としては…

 1.描く

 2.保存する

 3.保存したデータを読み出す

の2つしかありません。最低限というか、これが出来ないとペイントソフトになりません。

 

 描画機能

 これがメインです。ここの機能をざっくり挙げていきます。

 1.キャンバスの作成

 2.描画ツールで描画

 3.アンドゥ

 4.削除

とりあえずこれだけあれば十分な気がします。

 

 キャンバスの作成

 キャンバスにはどんな機能があったらいいでしょうか?と考えながら列挙していきます。

 1.任意のサイズで作成できる

 2.テクスチャを選択できる

 3.拡大・縮小

 4.回転

 5.移動

 6.傾ける

 7.レイヤー

 8.キャンバスをまとめて管理できる(ページ管理)

 

 描画ツール

 キャンバスは整いました(たぶん?)。目の前にキャンバスがあるとして描画するには何が必要かを考えていきます。

 1.鉛筆

 2.消しゴム

 3.スケール

 4.描画を整える素材(指、布)

これで下描きができるはずです。次に描画を攻めていきます。

 5.パステル・チョーク

 6.ペン

 7.筆

 8.指

 9.絵の具・色材

 10.メディウム

これ以上何かあるでしょうか。これだけあれば描ける気がします。目の前にキャンバスがあって、絵の具があって筆があるとなれば作品は出来てくるはずです。何か足すとすれば…

 11.パレット

 12.下絵、元絵を表示する・被せる機能

 13.使用頻度の高い画材をまとめておく工具箱

 14.エアブラシ

 15.スポイト

 16.全体の色調を整える(光の具合等)

 17.オブジェクトのグループ化

のような機能があると便利です。

 1~8はそれぞれ太さ・幅、傾き、硬さ、筆圧があってそれを自由に選択、表現できるといいです。

 

 保存

 これで、きっと何か絵が描けているはずです。ドット絵とかは無理ですが。保存しましょう。

 1.一時保存

 2.レイヤーなどの情報を含めた保存

 3.画像データとしての保存

これだけあればいけるはず。

 

 UIの大体の構成は、メニューバーがあって、キャンバスがあって、描画ツールがあって、調整ツールがある感じです。メニューバーは固定で、その他はドッカー内をユーザーが調整できるといいです。

 

 大体の構想がまとまったところで、開発に入りたいのですが・・・Android Studioが今現在使えないので、JavaFX、JOGL辺りを使いながら作成していきます。少しづつGitに上げていきながら完成を目指します。