專注網格剖分 - TetGen

weixin_33894992發表於2013-08-29

提要

       記得大三那一年有一門課叫做高等有限元,最後的作業就是網格剖分演算法的實現,我和同學一起花了些時間做了一個Qt程式,他寫演算法,我寫介面,最後成績竟然出奇的拿了90多...

        今天要介紹的這款軟體TetGen就是一款網格剖分的軟體,算是力學計算中的前處理,他能夠將輸入的三維模型剖分成一個個的單元,如下圖:



       最左邊的是原三維模型,中間圖為Delaunay演算法生成的四面體網格,最右邊的圖為在tetview中檢視剖分的結果。

       官網的手冊裡還有一些關於剖分演算法的說明,有興趣的可以去看看。

       官網:http://tetgen.berlios.de/

       環境: ubuntu 12.04 32bit 


編譯

下載原始碼之後cd進目錄,然後執行

make

編譯完成之後,目錄下就會生成一個名為 tetgen 的可執行檔案。


執行tetview

       這個是用於檢視網格模型的工具。 因為這個東西比較老,所以首先要安裝一些比較老的庫。

       g77

下載好之後解壓,cd進目錄執行:

sudo ./install.sh


       stdc++5

 sudo apt-get install libstdc++5 


 將下載好linux版本的tetivew解壓,再將example解壓到相同的目錄,終端cd進目錄,執行:

./tetview pmdc.1

一切配置正確的話,tetview就執行了。很簡單的一個操作介面,按F1沿著plane剖分,效果就像這樣:



網格剖分實戰

首先開啟blender,Add->Mesh->Torus,新增一個圓環,然後File->Export->Stanford(.ply),匯出ply檔案,待會用於剖分。



將匯出的ply模型放到tetgen的目錄,終端執行:

./tetgen -p torus.ply 



再將生成的檔案拷貝到tetiew的目錄下,執行

./tetview torus.1.ele


相關下載

g77 

 

相關文章