Summary of problem description
Tiny image datasets with spacing << 0.1 cannot be interacted with in 2D and are not displayed correctly in 3D.
actual behaviour
1.) Intersection planes are only displayed at the border of the dataset and cannot be interacted with.
2.) Tubular edge in 3D views is much too large and occludes the dataset
expected behaviour
1.) Plane interaction should be possible for small datasets which still have realistic spacing settings (e.g. from small animal CT)
2.) Tubular edge radius should scale with dataset / bounds size
Cause of the bug
1.) In PlaneGeometry and SlicedGeometry3D, vector calculations become invalid due to an epsilon check on non-normalized vector which refuses small direction/difference vectors
2.) Tubular edge radius is not considering dataset spacing
Proposed solution
1.) Normalize vectors before checking for parallelity
2.) Take image/geometry spacing into account when calculating tubular edge radius
Affected classes
- mitk::SlicedGeometry3D
mitk::PlaneGeometry
- mitk::Geometry2DDataVtkMapper3D
How will the bugfix get tested?
Bugfix improves behaviour, not stability of the application. Manual verification should be sufficient.
