パーティクル同士をつないで幾何学的模様をつくります。

HTML部分

やっていることは点を移動させる。移動方向は最初にランダムに決めておく。近くに別の点があったらつなぐ。近ければ濃い直線を描画する。これだけです。

JavaScript部分

グローバル定数はこれだけです。

Particleクラスの定義

Particleクラスを定義します。コンストラクタの引数は生成された座標と移動速度です。Move関数で移動させますが、canvasの端にきたら反対側にワープさせます。

ページが読み込まれたときの処理

ページが読み込まれたらパーティクルを生成します。初期座標は0以上CANVAS_WIDTHまたはCANVAS_HEIGHT未満です。移動速度は0.4以上0.8未満、移動方向もランダムに決めます。

更新処理

更新処理はパーティクルを移動させて描画します。またそれぞれのパーティクルの近く(距離80以内)に他のパーティクルがあるか調べます。見つかった場合は距離が離れていると薄く、近いときは濃く描画したいので-0.02 * distance + 1.6でアルファチャンネルを求め、1を超えたときは1を設定します。そして直線で結びます。