如何使用java将数组读入vtkImageData

时间:2017-01-04 10:09:03

标签: java c++ 3d vtk

我想用java来虚拟化一个3D数组。但是,没有太多的使用java的演示代码,所以我以一些C ++演示代码为例。这里是一个使用C ++的例子,它在内存中实现3D数据的3D重建,代表3D Image。首先,它在内存中创建一个3D数组,如下所示:

unsigned short data[dim][dim][dim];

for (int i=0;i<dim;i++)

for (int j=0;j<dim;j++)

for (int k=0;k<dim;k++)

   data[i][j][k]=1000;

然后将此数组的指针传递给vtkImageData,后者可以在以后处理3D数组数据,如下所示:

vtkUnsignedShortArray *array=vtkUnsignedShortArray::New();

array->SetVoidArray(data,dim*dim*dim,1);


vtkImageData *imageData=vtkImageData::New();

imageData->GetPointData()->SetScalars(array);

根据这个程序,我用java写了一个类似的代码,像这样: enter image description here

但我找不到合适的方法来传输我的3D图像数据数组(imageArr从指定的tiff文件中读取像素数据。)

在这里我的问题是,如何使用基于vtk的java将3D iamge数据阵列重建为3D图像。

我是中国学生,不擅长使用英语,我会很高兴你的答复。

0 个答案:

没有答案