MITK supports both VTK-based and non-VTK-based rendering. Currently, 3D mappers are invariably VTK-based (derived from mitk::BaseVtkMapper3D), and 2D mappers are mostly non-VTK-based (derived from mitk::GLMapper2D).
In particular, mitk::ImageMapper2D uses IIL / ipPic related rendering code. Other 2D mapper classes use OpenGL directly for painting.
Avoiding "hand-made" non-VTK mappers as much as possible and using VTK instead (at least as long as performance is not significantly threatened) would make the MITK rendering approach more consistent and easier to extend.
TODOs:
- Examine currently existing 2D mappers:
- Is the mapper still used in MITK at all?
- Which external (IIL etc.) code is still in use?
- Is there a simple and efficient VTK feature which can be used to re-implement this mapper?
- Decide which mappers to reimplement
- Write specification for the new mappers and do the implementation