013 · 描画

metaballs

融け合う等値面の輪郭

いくつかの丸が漂い、近づくと縁が溶け合い、離れるとちぎれて分かれる。各点に「丸からの近さ」を撒いた場を、ある高さで切った断面の輪郭線でなぞる。

場は各丸の r*r / (距離*距離 + 1) を全部足した合計。最大値でなく素直な加算なので、丸の中間に低い橋ができて、近づくと谷が埋まり一つに繋がる。丸は4〜6個を毎回ランダムに撒き、速度で漂わせて壁で跳ね返す

輪郭は塗りつぶしでなく線。64×64 のマス目で四隅の値をしきい値 1.0 と比べ、マーチングスクエアで辺をなぞる。辺上の交点は線形補間で求めて、縁を値になじませた。塗りは無く、tint(28) のストロークだけを paper の上に引く。