segfault in vtkVolumeRayCastSpaceLeapingImageFilter
This issue was created automatically from an original Mantis Issue. Further discussion may take place here.
Hi,
In 3.12 when volume rendering on image data I'm experiencing segfaults in vtkVolumeRayCastSpaceLeapingImageFilter in vtkVolumeRayCastSpaceLeapingImageFilterMinMaxExecute. The issue seems to be that vtkImageData::ComputeIncrements relies on active scalars being set. However, for use with ParaView I don't think this can be guaranteed. for instance how would an object that produces multiple arrays, eg a reader, correctly set active scalars?
A quick fix is below, the real fix probably is quite a bit more involved.
--- ParaView-3.12.0-base/VTK/VolumeRendering/vtkVolumeRayCastSpaceLeapingImageFilter.cxx 2011-11-08 12:56:45.000000000 -0800 +++ ParaView-3.12.0/VTK/VolumeRendering/vtkVolumeRayCastSpaceLeapingImageFilter.cxx 2012-01-05 16:34:06.217415840 -0800 @@ -801,6 +801,10 @@ return; }
- // FIXME --- this keeps things running smoothly when active scalars
- // are not set but modifies the input
- inData[0][0]->GetPointData()->SetScalars(this->GetCurrentScalars())
- const int components = this->GetCurrentScalars()->GetNumberOfComponents(); const unsigned int nComponents = (this->GetIndependentComponents()) ? components : 1;