2020 Week 25 (Late June)
This is the first merge back from the develop branch into the master branch since we introduced git-flow. These merge commits will be accompanied by curated changelogs. As it is the first changelog, it reflects everything noteworthy that happened since April 2018 that was not already part of the last MITK release v2018.04.2. Over 400 tickets were resolved in that time, hence we focus on the highlights and breaking changes including migration hints.
Third-party dependency changes
Several dependencies were upgraded to newer versions, removed, or introduced:
Dependency | Old version | New version |
---|---|---|
Boost | 1.68 | 1.70 |
cpprestsdk | 2.10.10 | |
CMake | 3.10 | 3.14.5 |
CTK | fc06bedc (Aug 10, 2018) | 78341aba (Dec 07, 2019) |
DCMQI | d067f81c (Jun 26, 2018) | ea4f0809 (Jan 23, 2020) |
DCMTK | 29f9de10 (Jun 15, 2018) | 3.6.5 |
GDCM | 2.6.3 | 3.0.4 |
2.8.1 | ||
ITK | 4.13.1 | e53d1d94 (May 22, 2020) |
MatchPoint | 24ef6072 (Apr 13, 2018) | f2a64255 (May 02, 2019) |
OpenCV | 3.4.1 | 3.4.8 |
OpenIGTLink | 54df50de (Aug 21, 2014) | 3.0 |
Qt | 5.11.1 | 5.12 |
2.0.15 | ||
0.9.32 | ||
1.0.17 | ||
9d510bef (Mar 1, 2018) | ||
zlib | 66a75305 | 1.2.11 |
API-breaking changes
Render window names 💥
- The render window names stdmulti.widget[1-4] were changed to stdmulti.widget[0-3]. For example, the standard 3d render window now is stdmulti.widget3 instead of stdmulti.widget4.
Python
- MITK_USE_Python CMake variable was renamed to MITK_USE_Python3
- On macOS, CMAKE_FRAMEWORK_PATH can be used to find a specific version of Python
RenderingManager and rendering mode
- Access to the rendering manager was unified to the static method RenderingManager::GetInstance() (remove any parameters of type RenderingManager from function calls that generate corresponding compiler errors)
- The rendering mode was removed as it represented different independent concepts (remove any parameters of type BaseRenderer::RenderingMode::Type from function calls that generate corresponding compiler errors)
Level window
- LevelWindowManager::RecaluclateLevelWindowForSelectedComponent() was renamed to RecalculateLevelWindowForSelectedComponent()
Refactoring of QmitkStdMultiWidget and QmitkStdMultiWidgetEditor
- The level window slider is now controlled by StdMultiWidgetEditor
- QmitkMultiWidgetLayoutManager was introduced to change the layout of multi widgets. It supports more general layouts and reacts dynamically, depending on the selected/active render window widget. For example, to enlarge a specific render window widget or to move a specific render window to the left.
- The enum IRenderWindowPartStrategy moved into WorkbenchUtil
- These methods of QmitkStdMultiWidget were removed:
- SetWidgetPlaneModeToSlicing()
- SetWidgetPlaneModeToRotation()
- SetWidgetPlaneModeToSwivel()
- SetWidgetPlanesLocked()
- SetWidgetPlanesRotationLocked()
- SetWidgetPlanesRotationLinked()
- EnableStandardLevelWindow()
- DisableStandardLevelWindow()
Qt-related variables removed from dashboard scripts
- QT5_INSTALL_PREFIX and QT_BINARY_DIR were removed. Add the Qt path to the PATH environment variable instead. For example, right in the dashboard script like set(ENV{PATH} "$ENV{PATH}...").
Removed modules and plugins
The following legacy modules and plugins were removed without successors:
- GPGPU
- PlanarFigureSegmentation
- RDF
F1646878: depthpeeling.mp4 | |
Jun 29 2020, 12:07 PM |
F1646868: selectiondialog.png | |
Jun 29 2020, 11:47 AM |
- Last Author
- kislinsk
- Last Edited
- Jun 26 2020, 3:05 PM
Event Timeline
MITK is a great image processing tool that is very popular in our research group. Thank you guys for making/maintaining such an amazing open source project!
Any time schedule to upgrade ITK and VTK to latest version (ITK5.1 & VTK9)?
VTK 9 upgrade is basically finished already but we also need to upgrade/contribute to ACVD, which needs quite some changes to continue working with VTK. See T27461: Update MITK to use VTK 9.
@nolden started a task for ITK 5.1: T27437: Migrate MITK to use ITK 5.x .
The changes from ITK 4.x to 5.x are quite cumbersome and do require some time to accomplish. Thank you again!