我正在尋找一個良好的3D網格庫一個良好的3D網格庫
- 應該能夠閱讀流行格式(OFF,OBJ ...)
- 應支持半邊結構三角湯
- 應該容忍故障和非法網格。
- 基本的幾何操作 - 交叉點,正常計算等'
- 最重要的是 - 不應該使用無盡的模板和繼承層次結構。
我試過CGAL和OpenMesh,但都在最後一點失敗。
即使使用最先進的代碼分析工具也無法跟蹤的CGAL。
到目前爲止,我正在認真考慮拉我自己的。
我的偏好是C++,但我打開其他選項。
我正在尋找一個良好的3D網格庫一個良好的3D網格庫
我試過CGAL和OpenMesh,但都在最後一點失敗。
即使使用最先進的代碼分析工具也無法跟蹤的CGAL。
到目前爲止,我正在認真考慮拉我自己的。
我的偏好是C++,但我打開其他選項。
請問爲什麼最後一點是要求?
爲公共消費編寫的圖書館被設計爲儘可能通用,以便最廣泛的受衆可以使用。在C++中,這通常最好使用模板完成。如果找到一個好的圖書館,它會非常糟糕,只會發現它對你的目的沒用,因爲它使用浮動而不是雙打。例如,CGAL似乎採用了廣爲人知和經過充分測試的編寫通用和可擴展C++庫的STL範例。這確實使代碼分析工具難以遵循;我懷疑他們是否非常擅長跟蹤STL頭文件。
但是你想使用庫或修改它?無論哪種方式,他們似乎都有一些非常高質量的文檔(例如Kernel Manual),這些文檔應該能夠相對簡單地找出您需要做的事情,而無需訴諸閱讀代碼。
聲明:我知道這不是你要求的。但我不認爲你在尋找什麼。這是異常罕見找到與我所見過的CGAL掃描一樣好的開源代碼。我強烈建議你再看看它。
首先,你需要一些一般性的評論:
據我瞭解你的問題,在我看來,你沒有清楚地看到像CGAL和OpenMesh這樣的圖書館。這樣的庫可能不會提供您需要的所有更高級別的工具,但它們的目標是爲您(特別是CGAL案例)提供可以構建幾何應用程序的所有幾何框架。這樣的幾何框架對設計非常微妙,特別是由於魯棒性問題,這對計算幾何非常具體。沒有這樣的框架,構建一個強大的應用程序是一項可怕的工作。
如果您沒有找到適合您需求的庫,那麼您應該認真考慮使用諸如CGAL之類的庫作爲開發的底層框架。它將防止出現與健壯性相關的問題,通常只有在開發過程中才會開始注意到,當更改底層框架時會很痛苦。除此之外,CGAL擁有豐富的文檔和非常活躍的用戶郵件列表。
如果你不知道在幾何軟件的魯棒性問題呢,看看這個頁面: robustness issues
我不知道它是否能對您有用。還有另一個圖書館,稱爲紅樹林TDS圖書館,免費提供於http://mangrovetds.sourceforge.net它支持任何類型的形狀(2D,3D,任何維度),任何領域(流形,非流形,僞流形,iqm複合體,單純複合體等)。它可能支持不規則的形狀,即由不同維度形成的形狀。
它的主要特性是它是可擴展的,就任何拓撲數據結構而言都是支持的。它是一個插件,可以在運行時更改和加載。
其實現基於基於數組的索引,以數據結構編碼,支持迭代器。它也支持動態屬性。
最後,它支持的數據結構(鬼實體),這對提高拓撲查詢的效率
我不知道這是否符合你的要求不是直接編碼實體的隱式表示,但看看到VCG – elect 2016-03-03 09:49:12