9

我有兴趣阅读和理解 2D 网格算法。在 Google 上搜索会发现很多论文和资料来源,但大多数都过于学术,对初学者而言并不多。

那么,这里有人会推荐任何我可以从一开始就学习的阅读资源(适合初学者)或开源实现吗?谢谢。

此外,与三角形网格生成相比,我对四边形网格和混合网格(四边形和三边形组合)更感兴趣。

4

2 回答 2

6

我第二次大卫关于乔纳森 Shewchuk 的网站的回答是一个很好的起点。

就开源软件而言,这取决于您到底在寻找什么。

  • 如果您对网格生成感兴趣,可以查看CGAL的代码。了解 CGAL 代码的低级部分对于初学者来说太过分了。但是,即使对于初学者来说,查看更高级别的算法也会很有趣。另请注意,CGAL 的文档非常详细。
  • 你也可以看看TetGen,但是它的源代码是单一的并且没有文档记录(它更像是一个最终用户软件而不是一个库,即使它也可以从其他程序中简单地调用)。尽管如此,它还是相当易读的,用户手册包含网格生成的简短介绍,并附有一些参考资料。
  • 如果你也对网格处理感兴趣,可以看看OpenMesh

有关您的目标的更多信息肯定会有助于提供更多相关的指针。

于 2008-10-08T15:21:42.943 回答
5

Google 搜索的第一个链接会将您带到Jonathan Shewchuk 的网站。这实际上并不是一个糟糕的起点。他有一个叫做三角形的程序,你可以下载它来进行二维三角测量。在该页面上,有一个指向用于创建三角形的参考资料的链接,其中包括一个指向三角测量算法描述的链接。

网格生成有多种方法。最常见的一种是创建 Delaunay 三角剖分。对一组点进行三角剖分相当简单,并且有几种算法可以做到这一点,包括在三角形中使用的 Watson 和 Rupert 。有点困难,因为您需要恢复某些边缘。

我将从了解德劳内三角剖分开始。然后也许看看其他一些网格算法。

您将在网格生成论文中找到的一些常见主题是

  • 鲁棒性 - 这就是如何处理浮点舍入错误。
  • 网格质量 - 确保三角形/四面体的形状接近等边。这是否重要取决于您创建网格的原因。对于分析工作来说非常重要,
  • 如何选择在网格中插入节点的位置以提供良好的网格分布。
  • 啮合速度
  • 四边形/六面体网格生成。这比使用三角形/四面体更难。

3D 网格生成比 2D 更难,所以很多论文都是关于 3D 生成的

网格生成是一个很大的话题。如果您能提供更多关于您感兴趣的方面(例如 2D 或 3D)的信息,那将很有帮助。如果您能对您的蚂蚁做什么有所了解,那么也许我可以找到一些更好的信息来源。

于 2008-10-08T13:42:42.627 回答