The Nature of Code(PDF版)からランダムウォークについて取り上げます。Processingでプログラムを書いて、動作を確認します。動作を確認できるところがProcessingの楽しいところです。Processingのデフォルトのプログラミング言語は、Javaです。Javaの勉強も一緒にできたらと思います。
ランダムウォーク
ランダムウォークとは、次に移動する場所をランダムで決定するものです。例えば、Processingでは以下のように書きます。
class Walker{ int x; int y; Walker(){ x = width/2; y = height/2; } void display(){ stroke(0); point(x, y); } void step(){ int choice = int(random(4)); if(choice == 0){ x++; }else if(choice == 1){ x--; }else if(choice == 2){ y++; }else{ y--; } } } Walker w; void setup(){ size(640, 360); w = new Walker(); background(255); } void draw(){ w.step(); w.display(); }
このコードでは、上下左右の4方向に移動します。他にも左上、上、右上、左、その場に留まる、右、左下、下、右下の9つの方向に移動するパターンもあります。
まとめ
今回は、The Nature of Code(PDF版)からランダムウォークについて取り上げました。Processingを用いてランダムウォークの動作を確認することができます。引き続き、The Nature of Code(PDF版)の内容を勉強します。