Crash when rendering gridlines with axis-aligned view/labels incorrectly invisible at some angles
This issue was created automatically from an original Mantis Issue. Further discussion may take place here.
In some cases, ParaView crashes when cube axis view is on and is set to render the gridlines.
I have a repeatable crash instance of this issue; the relevant state file is attached. I am working on a RHEL 5 box.
To see the crash (at least how it crashes on my machine):
- start paraview
- load the prism plugin (the state file will not load properly without the prism plugin)
- load the included state file (state3.pvsm). The data file is the SymmetricImpact2.exo file in the ParaViewData repository and the prism filter is the proxium.asc file in the same directory as the SymmetricImpact2.exo file.
- click on the simulation view, the left hand view side
- select (in the pipeline browser) the WarpByScalar1 filter
- in the display tab, turn cube axis on
- click the edit button next to the cube axes checkbox
- in the edit cube axes properties dialog, turn on show grid lines for all three axes, and on the y Axis tab also deselect the show axis option checkbox, then hit okay
- click the 'set view direction to -Y' in the view control toolbar (fourth axis align option from left)
my system crashes here.
On running a gdb debugger, I found that the immediate cause of the crash was in vtkAxisFollower::TestDistanceVisibility(). This routine gets called and the particular instance has the variable Camera as NULL (0). When the test this->Camera->GetParallelProjection() is made, we get a seg fault because Camera is 0. Futher digging suggested the problem at least goes back tovtkAxisFollower::Render(), where TestDistanceVisibility() may be called when Camera is 0. I stuck in a hack in this routine to abandon the render (and call SetVisibility(0)) when Camera is 0 here, but I don't think this is a fix.
If I do NOT have the prism view up and running (i.e. I am only looking at the simulation data), I don't get a crash here. However, I also see that as I look at various axis-aligned views, the axis labels and tic labels are disappearing when they should obviously be present. The view has to be somewhat off-axis in order to see the labels for an axis almost perpendicular to the view direction.
I have no idea if having the prism view somehow prevents the camera from initializing properly in the original view, or if I'm simply getting the same bad behavior differently depending on whether or not I have prism going.