The VTK 5.4.2 patch was released on June 4, 2009; this release is now available for download from the VTK website. A full list of changes is available through the VTK user’s mailing list archives. Included in this release are the following:
- GUISupport/Qt/QVTKWidget.cxx: Instead of deleting timers immediately, mark them for deletion next time the event loop is entered.
- Hybrid/vtkAxesActor.cxx: When a user transform is applied to vtkAxesActor, make sure the axis labels are translated with the axes
- Infovis/vtkCommunity2DLayoutStrategy.cxx: Fix a memory leak
- IO/vtkFLUENTReader.cxx: Bug fixes courtesy of Terry Jordan.
The first set of changes is necessary because for some reason this reader never supplied ParaView with its number of cells.
The second set of changes is necessary because it seems that we’ve either encountered errant fluent files, an error in their writer, or possibly some change to their file formatting, which no longer supplies the index within the end of binary section entries.
This patch is backwards compatible and has worked on all datasets tested.
Other fixes included in this release are as follows:
- Also fix uninitialized this->NumberOfCells. As this is used in PrintSelf. Detected by valgrind on otherPrint.
- Rendering/vtkCameraActor.cxx & Rendering/vtkLightActor.cxx: Changed vtkErrorMacro into vtkDebugMacro to avoid printing errors in the context of object instantiation. It happened because PrintSelf on the actor calls PrintSelf on superclass, which call GetBounds, which call UpdateViewProps() on the concrete classes vtkLightActor and vtkCameraActor.
- Rendering/vtkCarbonRenderWindowInteractor.cxx: Fix location for mouse events, bug #8261.
- Utilities/CMakeLists.txt: Use VTK_LIBRARY_PROPERTIES value for VERDICT_LIBRARY_PROPERTIES. Makes verdict library VERSION and SOVERSION consistent with other vtk utility libraries on Linux builds.
- Views/vtkGraphLayoutView.cxx: Check for a null pointer
- Widgets/vtkLineRepresentation.h & Widgets/vtkLineRepresentation.cxx: Computation of parameteric coordinate, t and the closest_point, was done in display coordinates. The value t cannot directly be mapped to word coordinates, since it needs to be scaled according to the projection matrix. (The farther you go from the camera position, the larger the increments in t). To avoid this, keep everything in word coordinates by using a picker.