高效的 Delaunay 三角测量

发布于 2024-12-03 01:24:09 字数 127 浏览 1 评论 0 原文

我正在寻找一个 .NET 实现,它可以从一组点构建 Delaunay 三角剖分。

我已经测试了几个实现,但它们都只适用于少量点(最多 20,000)。

我需要能够在合理的时间内处理 500,000 点的东西。

I'm looking for a .NET implementation which builds Delaunay triangulation from set of points.

I have already tested couple of implementations but they all worked only for small amount of points (up to 20,000).

I need something that can handle 500,000 points in reasonable time.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

无语# 2024-12-10 01:24:09

如果要构建 2D Delaunay 三角剖分,请使用 Triangle.Net。它是 Shewchuk 著名的 Triangle 程序的直接 C# 移植。

If you want to construct the 2D Delaunay triangulation, use Triangle.Net. It is a direct C# port of Shewchuk's famous Triangle program.

世界如花海般美丽 2024-12-10 01:24:09

我正在寻找同样的东西,我发现了一个名为 MIConvexHull 的 C# 4.0 库:

“适用于 2D、3D 及更高维度的凸包算法和库
方面。该代码还可用于计算 Delaunay
输入数据的三角剖分和 Voronoi 网格。基准测试
表示凸包代码和4维及更高维
三角测量代码与以下提供的解决方案相当或更好
C++ 库 CGAL。”

http://miconvexhull.codeplex.com/

2016 年 9 月更新:

此库已移至 Github,似乎现在已在 MIT 许可证下发布(其中一些示例是 GPL),您可以在这里找到最新版本:

https://github.com/DesignEngrLab/MIConvexHull

文档其实就在源码里,很简单以下是 Delaunay 三角剖分的相关源文件:

https://github.com/DesignEngrLab/MIConvexHull/blob/master/MIConvexHull/ Triangulation.cs

如果您想查看 2012 年的原始版本。请看这里:

http://miconvexhull.codeplex.com/SourceControl/changeset/查看/e1b26677eb1a#MIConvexHull/Triangulation/Triangulation.cs

I was looking for the same thing and I found a C# 4.0 library called MIConvexHull:

"A convex hull algorithm and library for 2D, 3D, and higher
dimensions. The code can also be used to compute Delaunay
triangulations and Voronoi meshes of the input data. The benchmarks
indicate that the convex hull code and 4 and higher dimensional
triangulation code is on par or better than the solution provided by
the C++ library CGAL."

http://miconvexhull.codeplex.com/

Update Sep/2016:

This library has moved to Github and it seems that it is now released under the MIT license (some of the examples are GPL). You can find the latest version here:

https://github.com/DesignEngrLab/MIConvexHull

The documentation is actually in the source code and it is simple to use. Here is the relevant source file for Delaunay triangulation:

https://github.com/DesignEngrLab/MIConvexHull/blob/master/MIConvexHull/Triangulation.cs

If you want to see the original version from 2012. Take a look here:

http://miconvexhull.codeplex.com/SourceControl/changeset/view/e1b26677eb1a#MIConvexHull/Triangulation/Triangulation.cs

心碎无痕… 2024-12-10 01:24:09

您是否尝试过 NetTopologySuite

Have you tried NetTopologySuite

一人独醉 2024-12-10 01:24:09

有一个 C# 实现可以帮助您生成 Voronoy 图以及 Delaunay 三角剖分:http://www.codeproject.com/Articles/11275/Fortune-s-Voronoi-algorithm-implemented-in-C

There is a C# implementation which could help you to generate Voronoy diagram as well as Delaunay triangulation: http://www.codeproject.com/Articles/11275/Fortune-s-Voronoi-algorithm-implemented-in-C

信愁 2024-12-10 01:24:09

有一个名为 G# 的解决方案。

它具有 Delaunay 三角剖分(也带有断裂线)。从他们网站上的性能图表来看,您应该能够在大约 30 秒内对 500k 点进行三角测量。

There is a solution called G#.

It has Delaunay triangulations (also with breaklines). From the performance graph on their website you should be able to triangulate 500k points in about 30s.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文