SegFault in FixedPointVolumeRayCastMapper
This issue was created automatically from an original Mantis Issue. Further discussion may take place here.
I have a 128^3 volume that i'm trying to volume render. The images I get are truly stunning, good job here guys.
I've written a script to rotate the volume rendering from 0 to 180 degrees, in 2 degree increments. But every time I cross the 45degree mark on any axis, it crashes with a segmentation fault.
a Backtrace shows the following:
[2:58:05pm]% dbx visualizer dbx version 7.3.4 (86441_Nov11 MR) Nov 11 2002 11:31:55 where Core from signal SIGSEGV: Segmentation violation (dbx) Thread 0x10000 > 0 vtkFixedPointVolumeRayCastMapper::CheckMinMaxVolumeFlag(unsigned int*,int)(this = 0x14049428, mmpos = 0xfffffff9a50, c = 0) ["/viz/home/rhand/src/ezViz/Utilities/VTK/VolumeRendering/vtkFixedPointVolumeRayCastMapper.h":529, 0x5b12840] (dbx)
This looks like a VTK bug to me. I've tried it with 15 different datasets from the same project (same dimensions, etc), and all show the same behavior.
I've done a little more investigating, and discovered a few more things:
The crash occurs when my app hits 46 degrees (I'm only doing even degrees right now), but still crashes at 48 and 50 degrees as well. When I reset it to start at 180, it crashed at 262 degrees with a similar error. In my application I'm rotating by adjusting the camera's Azimuth property.
The crash seems to be coming from the VTKKWRCHelper_SpaceLeapCheck() macro in vtkFixedPointVolumeRayCastHelper.h, which calls CheckMinMaxVolumeFlag in vtkFixedPointVolumeRayCastMapper.h. There seems to be some memory corruption going on that moves the actual error point in the core dump from one to the other, but they're related.
Has anyone else seen this problem before?