我将渲染 3D 数据,它是一个一维数组。这些数据在将进行可视化的同一程序中预先计算。数据代表一个统一的 3D 网格。网格的每个单元都由一个向量组成。
GridSize = dx * dy * dz * 3
如何在不通过 VTK 复制的情况下可视化这个数组?请提供一个简短的 VTK 调用序列。
这个怎么样?
int dx = 10, dy = 10, dz = 10;
vtkSmartPointer <vtkImageData> image =
vtkSmartPointer <vtkImageData>::New();
image->SetDimensions(dx, dy, dz);
image->AllocateScalars(VTK_DOUBLE, 3);
double * Grid = reinterpret_cast<double*>(image->GetScalarPointer());
populate(Grid,dx,dy,dz);