成果物
今回は、前回のConstrained Delaunayを発展させて文字で行っていました。前回は一つの輪で切り取っていましたが、文字では多数の輪があり、切り取る輪、残す輪があるので、思った以上に難解でした。
最終的にPolygon in Polygonを使った後処理で解決することにしましたが、思いつくまでが長かったです。
仕組み
ベースは前回のConstrained Delaunayです。
nekodigi.hatenablog.com
まず、文字を構成する全ての輪を計算します。詳しくはこちらの記事を参照してください。
nekodigi.hatenablog.com
そして、Constrained Delaunayを輪に合わせて順に計算していきます。(この段階では切り取りません)
成形されたDelaunay図が出来上がったので、各三角形の中心が文字の内側か外側からを計算します。(精度が悪いので複数回実行)
外側だけを表示すると上の画像のようになります。
コード
Constrained Delaunay Textという名前で追加しています。
github.com
25ファイル…画面からはみ出ました(笑)。CSVに変換するコードを書いたらさらに増えそうです。