いわゆる一つのライフゲームというやつです。 出来たのは瞬間ですが、スレッドが終了しなくて悩みまして、しかも結局未解決です。
マウスのボタンを押しながら画面上を動かすとライフが配置出来ます。 次の世代を計算するときはnextボタンを押します。 次々の世代を連続して計算するときは、autoボタンを押します。 もう一度押すと、停止します。 現在の世代は、右のラベルに表示されます。開始直後は0世代目です。 current tool: LIFE_A と書いてあるボタンをクリックすると配置する物体を変更できます。 順番は、ライフ(LIFE_A)、何もない空間(NOTHING)、石(STONE)の順番です。 all clearボタンを押すと全ての物体を消去して、autoを停止し、世代を0に戻します。 refreshボタンを押すと全画面を再描画します。 何かの拍子で内部データと表示が違ってしまったときに有効です。
ライフゲーム世界の神は現在の世代の全てのマスについて周囲8マスのライフの個数を数えて、 次の条件で次世代の配列を確定します。