ランダムに配置された任意の数のポリゴン(この場合はヘクス)がありますが、それらはすべて別のヘクスに接触しています。
個々のヘクスには6つのx、y頂点があります。頂点はすべてのヘクスで知られています。
誰かが私を、すべてのヘクスを1つのポリゴンに結合するアルゴリズムの方向に向けることができますか?基本的に、私は、ある頂点から次の頂点に線を引くときにポリゴンを形成するように順序付けられた頂点位置の配列を吐き出す関数を探しています。
これはこれまでの私の方法です:
- すべてのヘクスのすべての頂点の配列を作成します。
- 配列内で頂点が発生する回数を決定します
- 頂点が配列内に3回以上ある場合は、配列から頂点を削除します。
- 頂点が配列に2回含まれている場合は、そのうちの1つを削除します。
ただし、次のステップは注意が必要です。私はキャンバスを使用してこれらのポリゴンを描画しています。これには、基本的に、ある頂点から次の頂点に線を描画することが含まれます。したがって、最終的な配列の頂点の順序は重要です。任意に並べ替えることはできません。
また、ポリゴンを正しく描画できないため、「凸包」アルゴリズムは探していません。
このようなことをする関数はありますか?私は正しい方向に進んでいますか、それとももっと効率的な方法がありますか?