2014-06-30 125 views
0

我已經安裝了CMake,但我沒有承諾如何使用可視化工具包!我用C完成了一個.dat文件,並且我想製作一個.vtk文件。如何在C語言中使用VTK?

+0

vtk文件非常易於編寫。 www.vtk.org/VTK/img/file-formats.pdf。你寫什麼?結構化網格,直線網格還是多邊形數據?你怎麼寫你的.dat?請告訴我們更多 ! – francis

+0

@francis我用C編寫我的.dat文件(我在程序中創建了一個.dat文件)。我必須編寫一個結構化網格。 – user3765272

回答

0

一個.vtk結構網格看起來是這樣的:

# vtk DataFile Version 2.0 
Really cool data 
ASCII 
DATASET STRUCTURED_GRID 
DIMENSIONS 2 2 1 
POINTS 4 float 
0 0 0 
0 0 2 
0 1 0 
0 1 1 
POINT_DATA 4 
SCALARS volume_scalars char 1 
LOOKUP_TABLE default 
1 2 3 4 

使用該工具包是不是絕對必須寫這樣的文件。如果你正在使用C++,你可以嘗試使用它。 http://www.vtk.org/Wiki/VTK/Examples/Cxx/StructuredGrid/StructuredGrid

或者你可以使用fopen(),在stdio.hfprintf()fclose()。 結合像這樣的東西:

#include <stdio.h> 
... 
FILE* f = fopen("bla.vtk","w"); 
if(f==NULL){printf("file vtk, failed to open\n");} 
fprintf(f, "# vtk DataFile Version 2.0"); 
... 
fprintf(f,"%f %f %f\n",x,y,z); 
... 
fclose(f); 

祝你好運!

+0

真的很感謝你!什麼是維度?點4浮動?和look_up表? – user3765272

+0

'DIMENSIONS'是網格的尺寸,這裏是一個最小網格,在z方向上有一個單層,所以2 2 1.'POINTS 4 float'對應於原型'POINTS n dataType',其中'n'是非結構化網格中的點數,邏輯上爲2x2x1。你可以在http://www.vtk.org/VTK/img/file-formats.pdf找到更多關於這方面的信息 – francis