three patches
Description
Event Timeline
The input data is a 3D+T mitk::PointSet and a 3D+T mitk::Image, both of 4 time steps.
- mitk::PointSet: All time steps empty except time step 3 that contains 1 point at position (300,300,300).
- mitk::Image: origin is (300,300,300) and size (10,10,10).
When the image and the pointset are rendered at the same time, the function mitk::DataStorage::ComputeBoundingGeometry3D( ) is called and it includes the point (0,0,0). So the bounding box is not correctly computed because it should start at (300,300,300) and finish at (310,310,310).
This is because there are empty time steps at the mitk::PointSet.
The patch is applied when computing the boundig box. Checks if the computed bounding box is 0,0,0,0,0,0, and if it is, this points are not taked into account.
mitk::PointSet is Mathias' baby...
Mathias, could you adapt BB creation? Works for mitk::Surface::CalculateBoundungBox(), maybe can be just done parallel?
The solution in the patch should work, too.
Anyhow, I would not suggest the BB = 0 checks in the geometries, because these are not the normal cases.
[SVN revision 21184]
FIX (#3209): Check if time steps contain data before considering them for BoundingBox calculation. (Empty time steps have a zero bounding box).