我有一个三角形网格。三角形有不同的“颜色”。就像这样:
我需要得到优化的网格,其中过多的三角形被合并成凸多边形。就像这样:
有人能给我一些算法的链接来完成这个吗?提前感谢!
P.S. 我正在使用C#。
![enter image description here](https://istack.dev59.com/UgMtL.webp)
![enter image description here](https://istack.dev59.com/rFl0l.webp)
P.S. 我正在使用C#。
我没有任何解决这个问题的算法链接,但我认为比一次建立三角形的凸多边形更好的方法可能是先将三角形合并成最大的简单多边形(即:它们可以是凹多边形,但没有洞),然后将这些大多边形分割成它们的凸组成部分。
由于内角大于180度,你知道这些分割将发生在哪些顶点上,然后你只需要选择沿着哪条相邻边进行分割。选择一个最优边进行分割的精确方法并不是一个简单的问题,但一个合理的启发式方法可能是在分割后最大化<180度的内角数量。