感谢您花时间阅读我的问题。如何检测并保存边缘顶点的循环连接(孔检测)?
我正在检测三角形网格中的孔,并用新的三角形填充它们。我已经完成了一些部分,以获得边缘顶点列表等。以下是形成孔的顶点/边缘,请查看图像。
(9, 62) => vertex # 9 and 62 makes an edge (left hole)
(66, 9) => vertex # 66 and 9 makes an edge (left hole)
(70, 66) => vertex # 70 and 66 makes an edge (left hole)
(62, 70) => vertex # 62 and 70 makes an edge (left hole)
(147, 63) => vertex # 147 and 63 makes an edge (right hole)
(55, 148)
(63, 149)
(149, 55)
(148, 147)
,我需要做的第一件事是检查其顶点构成一个循环(指被检测孔),然后保存在单独的一组循环的顶点。
问题是编写这样的算法来检查给定的图形(顶点/边)是否包含多少个周期?然后保存到单独的集合中。
请给我写一些简单而优化的算法来解决这个问题。
谢谢。
谢谢你,Spektre,编码是复杂的,你有什么建议。你有一些样本或伪代码? – furqan
@furqan不,但是我可以在C++中占用一些东西,当我有时间的时候......你有没有测试漏洞的STL? (需要将此代码作为应用程序的一部分,我正在为朋友进行3D打印) – Spektre
是啊为什么不,在网格中打孔非常简单,您可以使用我的软件Real3d渲染器(http:// real3d。 pk/softwares.html)。进入菜单 - >编辑 - >选择和裁剪,然后按开始。使用Ctrl +鼠标左键,选择三角形并删除它们。 – furqan