魔術師をめざして

魔術師を目指して、相場・数学・プログラム言語を研究しています。

Processing & artrect

Processing(プロセッシング)は、誰にでも使えるプログラミング言語だ。ぼくは何年か前に Processing の練習と思って artrect というアプリケーションを作ってみた。

【 Processing - http://processing.org/
f:id:fxrobot:20131029191244j:plain

ぼくは易しいプログラミング言語という分野にも興味がある。SmallBasic なども実際に使ってみたことがある。しかし Processing はただ易しいというのではなく、図形処理という能力に尖っているのだ。

ぼくはさっそく Processing 1.5.1 というバージョンを用いて artrect(アートレクト)を作りはじめた。Processing は Java で開発されており、Processing で開発したプログラムはコンパイルして jar(実行ファイル)にすることができる。実行は Windows、Mac OS XLinux で可能だ。また、Applet にすることもできる。Windows 向けの場合は exe(Windows向け実行ファイル)を自動的に作ってくれる。

f:id:fxrobot:20131029191850j:plain

Processing はシンプルながら IDE(統合開発環境)を提供している。artrect はこの IDE を使って開発した。画像でわかるように現在 Version 0.0.38 だ(開発はここで止まっている)。

artrect を起動する(artrect_0038.exe をダブルクリックするだけ)と、背景の黒いウィンドウが現れる。ウィンドウ上の好きな場所で、マウスを左クリックすると、白い四角が表示される。それが artrect の始まりだ。マウスの左ボタンを押しながら動かす(ドラッグ)と図形が連続で描かれる。

f:id:fxrobot:20131029193006j:plain

上の画像では、四角のサイズを変えながら表示してみた。artrect はいろんな図形を表示できる。それらの指示にはコマンド(キーボードの1文字またはそれ以上)を割り当てている。

コマンドによって、四角(r)、三角(t)、円(e)、円弧(a)、菱形(q)、線(l)、点(p)などを選べる。カラーを指定することもできる。Blue(1)、Red(2)、Fuchsia(3)、Lime(4)、Aqua(5)、Yellow(6)、White(7)、Light Gray(8)、Gray(9)、Black(0)、Navy(11)、Maroon(12)、Purple(13)、Green(14)、Teal(15)、Olive(16)、Gray(17)、Dark Gray(18)、Deep Gray(19)としている。

背景のカラーを指定することも可能だ。(b0)とすれば黒で塗りつぶす。(b1)、(b2)、(b3)なども可能で、一般には(b<カラーコード>)で指定できる。既に描いた図形はそのカラーでクリアされるので(b0)は画面クリアとしてよく用いる。

その他、 Frame rate(F)、Zooming(z)、Set shape width(w)、Set shape hight(h)、Set stroke color and weight(s)、Set fill color(f)、No Fill(nf)、No Stroke(ns)、Yes Fill(yf)、Yes Stroke(ys)などのコマンドがある。

拡大(+)、縮小(-)コマンドがあり、(z+++)のようにすると図形が3単位分拡大される。また(z---)とすると図形が3単位分縮小される。同様に(s+++)で図形の枠線が3単位太くなる。

他には(Ctrl)と(Alt)コマンドがあり、Ctrlキーを押しながら、マウス左ドラッグすると、図形のカラーを 1~7 の範囲で変化させながら図形を描くことができる。Altキーの場合は、11~17 の範囲で自動的にカラーを変化させる。

使ってみたいという人には artrect.zip として zipファイルで提供するのでコメントで要求してほしい(ほしいコメントは非公開)。zip を解凍すると以下のフォルダが現れるので、あとはフォルダを好きなところに置いて、artrect_0038 をダブルクリックすれば動く。

f:id:fxrobot:20131029200107j:plain

アルファバージョンだけど、誰でも簡単にアートを楽しむことができるので、興味のある人は使ってみてもらいたい。

次の画像は、artrect で描いたものを Photoshop で少しだけ加工したものだ。

f:id:fxrobot:20131029195258j:plain

 以下も artrect で描いたもので、(nf)コマンドを使用。

f:id:fxrobot:20131029195446j:plain

線をたくさん描いてみた。これはアートじゃないかな。:P

f:id:fxrobot:20131029195456j:plain

点を描いてみた。

f:id:fxrobot:20131029195506j:plain

工夫すれば単純な図形だけで、魅力的な絵を描けるかもしれないよ。

【追伸】artrect の仕様を書いたのは今回が初めてのことで、紹介しなかったが、ウィンドウのサイズを変更する機能も持っている。その他にも今回書かなかった機能もある。興味をもつ人がいればまた紹介しようと思う。なければ紹介する必要もないだろう。