gpt4 book ai didi

algorithm - 修改 Delaunay 三角剖分的有效方法

转载 作者:行者123 更新时间:2023-12-04 02:29:35 27 4
gpt4 key购买 nike

MATLAB 在 their website 上声明:

It is more efficient to edit a delaunayTriangulation to make minor modifications as opposed to recreating a new delaunayTriangulation from scratch

这有什么算法吗?

如果我有 1000 个点并将其中 3 个移动到新位置,最好的方法是将它们移除并重新插入,还是有更好的方法?

最佳答案

有一整套算法可以通过一次插入一个点来构建 Delaunay 三角剖分。 Devillers, O. (2002) 描述了一个非常好的去除点的算法。 “关于 Delaunay 三角剖分中的删除”,国际计算几何杂志 * 应用 12.3。您应该能够在网上找到几个不同版本的 Devillers 文章。

由于您在 MATLAB 中工作,这对您没有太大帮助,但我已经在 J​​ava 中实现了 Devillers 算法并且它运行良好。如果您有一个支持修改现有三角剖分的 API,那么移除 3 个点然后将它们插入网格中的其他位置应该会发生得如此之快,以至于很难测量操作所需的时间。当然,1000个顶点是一个很小的三角剖分,简单重建网格所需的时间应该也很小。因此,除非您这样做了很多很多次,否则每次需要更改其内容时只重建网格应该是合理的。

如果您想查看增量 Delaunay 三角形实现的基于 Java 的实现,可以在 https://github.com/gwlucastrig/Tinfour 找到一个。 .我已经写了一些关于实现细节的笔记,并将它们发布在 http://gwlucastrig.github.io/Tinfour/doc/TinfourAlgorithmsAndDataElements.pdf

关于algorithm - 修改 Delaunay 三角剖分的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65168365/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com