【问题标题】:How do I preserve a polygon while performing 2D meshing in CGAL?在 CGAL 中执行 2D 网格划分时如何保留多边形?
【发布时间】:2016-12-13 16:27:08
【问题描述】:

我想在两个多边形(比如内部和外部多边形)之间创建一个二维三角形网格(可能是 Delaunay)。我的要求是不要在内部多边形上插入新节点,或者我希望保留内部多边形。有没有办法做到这一点?

【问题讨论】:

    标签: polygon mesh cgal triangulation


    【解决方案1】:

    根据您的描述,您似乎需要一个受约束的 Delaunay 三角剖分。看到这个example

    【讨论】:

    • 我想让内部区域以较小的网格尺寸进行网格划分,可以修改外部多边形,但内部多边形保持固定。
    【解决方案2】:

    CGAL 中的conforming triangulation 可以满足您的需求。您必须为其提供两个多边形的轮廓,并在要保留的区域中设置一个种子点。包含种子点的区域将被三角剖分,但不会被网格化(有关此行为的示例,请参阅我上面链接的文档)。

    您还可以使用is_in_domain() 函数来检查人脸是否在网格区域中。通过这种方式,您可以忽略内部多边形中的面并使用现有的三角剖分来代替它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多