元Webデザイナー兼コーダーの備忘録

ウェブデザインやプログラミング、ブログのカスタマイズなどについてアウトプットしています。

 メニュー

» HTML入門のまとめはこちらです。

Processingにおけるランダムウォーク(random walk)

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版)の内容を勉強します。

参考サイト

» HTML入門のまとめはこちらです。