感謝您花時間閱讀我的問題。如何檢測並保存邊緣頂點的循環連接(孔檢測)?
我正在檢測三角形網格中的孔,並用新的三角形填充它們。我已經完成了一些部分,以獲得邊緣頂點列表等。以下是形成孔的頂點/邊緣,請查看圖像。
(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