加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何将三角形网格化为凸多边形?

发布时间:2020-12-15 21:45:56 所属栏目:百科 来源:网络整理
导读:我有一个三角形网格.三角形有不同的“颜色”.像这样: 我需要得到的是优化网格,其中过多的三角形合并为凸多边形.像这样: 有人可以给我一些关于某些算法的链接来实现吗?提前致谢! 附:我正在使用C#. 解决方法 Hertel-Mehlhorn算法是执行此操作的标准方法;
我有一个三角形网格.三角形有不同的“颜色”.像这样:

我需要得到的是优化网格,其中过多的三角形合并为凸多边形.像这样:

有人可以给我一些关于某些算法的链接来实现吗?提前致谢!

附:我正在使用C#.

解决方法

Hertel-Mehlhorn算法是执行此操作的标准方法;它可以概括为

>从多边形P的三角剖分开始;
>删除不必要的对角线
>重复一遍.

(自http://www.philvaz.com/compgeom/起)

这在多项式时间内起作用,并且具有最优性的界限,尽管它不一定是最优的.

在您的情况下,您将通过不考虑不同颜色的三角形之间的对角线来修改步骤#2.

一种通常产生“更漂亮”的片段的启发式是在每一步合并最长的对角线.

希望有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读