Random space filling

空間を充填するつーのはすごく難しい問題らしい。

球体で埋める場合は「アポロニウスのギャスケット」というものを使えば出来そうですけど、それ以外はランダムに位置を決めてみて、重なってれば「偽」、はまれば「真」と、繰り返していくしかなさそうです。

で、これが、

続きを読む “Random space filling”


A* Path Finding: Part 3

ずいぶん前に作ったのがハードディスクの中で眠っておりました。
おもいつくままにコーディングしたのでもはや本人にもよく分からないことになってます。ぐちゃぐちゃ。

AStarMesh2

Objメッシュデータからウェイポイントを作り、パスファインディングしています。パスファインディング自体は前回と同じアルゴリズムですが、ウェイポイントの作成の際にメッシュデータを「ハーフエッジデータ構造」に変換しています。任意のエッジをはさんで(共有して)隣り合うポリゴンを得るためです。3Dソフトでループ/リング選択が出来るのはこの構造のおかげですね。

必要なライブラリは「controlP5」、「PeasyCam」、「OBJLoader」です。いずれもProcessing IDEの「Add Library…」でインストールできます。

ダウンロード→AStarMesh2-150523a(for Processing2.2.1)

中身見たら吐くよ。


A* Path Finding: Part 2

パート2!ウェイポイントをベースのパスファインディングです。
AStarWaypoint

Processing sketchはAStarWayPointです。

自動で三角分割するライブラリはLee ByronさんのMeshを使用しています。ただしバグがあったので修正しました、mesh、こちらはコモンズライセンスAttribution-NonCommercial-ShareAlike 3.0 Unportedとなります。