【发布时间】:2020-10-21 04:57:19
【问题描述】:
在给定现有轮廓的情况下,我需要创建一个顶点网格以用于寻路。我认为对于我的用例,一个符合约束的 Delaunay 三角剖分算法最适合,但是我不知道如何实现这样的算法。
CCDT 有哪些可能的实际(而非理论)实现?或者至少我应该研究什么才能提出自己的实现?
我正在使用 c#,但任何语言示例都会有所帮助。
【问题讨论】:
-
你看过Triangle吗?
-
+1 到三角形。不能具体说明这个问题,但是 IME 实现了计算几何和相邻算法,1)您希望对实际浮点数进行尽可能少的测试,并一遍又一遍地使用它们(Shewchuk 用三角形做到了这一点;如果你不'不要使用三角形,你至少应该阅读他的文章),以及 2)有大量的退化案例在理论文章中被挥手甩掉。
-
如果您的目标是计算某种缓冲/偏移多边形,您可以尝试检查 boost 几何或多边形库,还有移植到 c# 的裁剪器库
-
那里也有C# port of triangle。