プログラムな日常>ウェブプログラム作品集>
続、多角形を三角形で埋める
(fill polygons with triangles; continued)
anime

前回、大変に歪んだ三角形が多く出来て気になっていました。平面を埋めるだけのときは良いのですが、曲面では問題になります。 それで、アスペクト比の指標を計算して、正三角形に近いものを優遇するようにしました。

結果、「田」や「回」では大差ないですが、「doughnut」はとても綺麗に出ています。 面の中にあらかじめ点を置く、「doughnutwithpts」もやってみました。

色々な条件で試してみて、面を埋めつくすという意味で、現状でも完璧でないことはわかっています。 完璧は意外と難しいです。 (7/22 追加:)ここで生じていた問題は、点が直線に並んだ場合を検知できなかったことによることがわかり、これについては(重なりの判定基準を少しだけ広げることで)解決しました。 解決以前の求解は、「doughnutwithpts2withold」を見ることで確認できます。