Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
The Medical Imaging Interaction Toolkit (MITK)
Copyright (c) German Cancer Research Center,
Division of Medical and Biological Informatics.
All rights reserved.
This software is distributed WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR
See LICENSE.txt or for details.
#include <QApplication>
#include <itksys/SystemTools.hxx>
#include <mitkIOUtil.h>
//## @brief Load image (nrrd format) and display it in a 2D view
int main(int argc, char *argv[])
QApplication qtapplication(argc, argv);
if (argc < 2)
fprintf(stderr, "Usage: %s [filename] \n\n", itksys::SystemTools::GetFilenameName(argv[0]).c_str());
return 1;
// Register Qmitk-dependent global instances
// Part I: Basic initialization
// Create a DataStorage
// The DataStorage manages all data objects. It is used by the
// rendering mechanism to render all data objects
// We use the standard implementation mitk::StandaloneDataStorage.
// Part II: Create some data by reading a file
// Load datanode (eg. many image formats, surface formats, etc.)
mitk::IOUtil::Load(argv[1], *ds);
// Part IV: Create window and pass the datastorage to it
// Create a RenderWindow
QmitkRenderWindow renderWindow;
// Tell the RenderWindow which (part of) the datastorage to render
// Initialize the RenderWindow
mitk::TimeGeometry::Pointer geo = ds->ComputeBoundingGeometry3D(ds->GetAll());
// mitk::RenderingManager::GetInstance()->InitializeViews();
// Select a slice
if (sliceNaviController)
// Part V: Qt-specific initialization
renderWindow.resize(256, 256);
// for testing
#include "QtTesting.h"
if (strcmp(argv[argc - 1], "-testing") != 0)
return qtapplication.exec();
return QtTesting();
// cleanup: Remove References to DataStorage. This will delete the object
ds = NULL;