将弃用的等值面提取代码转换为VTK 8

时间:2018-07-03 10:54:55

标签: vtk raycasting itk geometry-surface volume-rendering

我可以在具有传统OpenGL支持的VTK <= 8.0.1中使用以下方法执行射线投射等值面提取。我可以可视化提取的表面,没有任何问题,一切正常。

现在,我想在VTK 8.1.1 OpenGL2(3.2)支持下移植相同的代码。在此版本中,不建议使用vtkVolumeRayCastIsosurfaceFunction和vtkVolumeRayCastMapper类。我尝试使用vtkContourFilter而不是使用这些类,但从未成功。如何使用新的GPU映射器vtkOpenGLGPUVolumeRayCastMapper或vtkFixedPointVolumeRayCastMapper获得相同的输出?

void IsoExtraction::create(double _iso, vtkImageData* _data)
{   
p_iso_surf_func = vtkVolumeRayCastIsosurfaceFunction::New();
p_iso_surf_func->SetIsoValue(_iso);


p_mapper = vtkVolumeRayCastMapper::New();
p_mapper->SetVolumeRayCastFunction(p_iso_surf_func);    // Set volume ray cast function
p_mapper->SetInputData(_data);

// … addToLOD (p_mapper) 
// …
}
void IsoExtraction::setIsoValue(double _iso)
{
    p_iso_surf_func->SetIsoValue(_iso);
}

0 个答案:

没有答案