2012-10-17 95 views
2

我正在嘗試使用VTK創建3D網格。 VTK似乎提供了許多方法來創建表示3D對象表面的網格。填充對象似乎更困難。我想這樣做的原因是將輸出傳遞給FEM工具,而不是氣球。在VTK中創建3D網格

目前,我在玩球體,似乎有很多方法可以爲3D物體的表面創建網格。我似乎無法做的是在體積內創建一個帶有點的球體。 vtkUnstructuredGrid類允許我表示這樣一個對象,但我似乎無法像使用vtkPolyData那樣對此進行網格劃分。

這是VTK的根本限制還是我只是沒有看到正確的工具?

+0

vtkPolyData高達2D對象(多邊形)支持,所以這是用來表示一個「表面網格」 。你是正確的,vtkUnstructuredGrid支持3D對象,你確實可以製作你想要的這個「實體」對象(例如填充四面體)。現在,我認爲「現在我似乎無法將此網格化」,這是什麼意思? –

+0

@David Doria,最好的方面。非常尊重你在VTK上的工作。 FEM網格有很多限制,以便成爲「好」。 VTK能創建FEM網格嗎?我不相信,這就是我給出答案的原因。但我很想做錯:) –

+1

@ElMarce我對FEM不太熟悉,但我相信這只是表示網格填充了一個體積,而不僅僅是一個表面。這可以在VTK中使用vtkUnstructuredGrid而不是vtkPolyData完成(請參閱http://www.vtk.org/Wiki/VTK/Tutorials/3DDataTypes)。您可以使用vtkTetra(http://www.vtk.org/doc/nightly/html/classvtkTetra.html)或其他體積單元填充vtkUnstructuredGrid。 –

回答

2

至於你說: 我想這樣做是爲了輸出傳遞到FEM工具作爲固體不是氣球

我asume你有你的FEM在自己的格式網格和要想象它。要做到這一點,你可以把你的有限元網格轉化成vtkUnstructuredGrid modifiying這裏所描述的代碼:

How to convert a mesh to VTK format?