diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/files.cmake b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/files.cmake
index 0f586c9..8ae0d5d 100644
--- a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/files.cmake
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/files.cmake
@@ -1,63 +1,69 @@
set(SRC_CPP_FILES
)
set(INTERNAL_CPP_FILES
mitkPluginActivator.cpp
QmitkFiberQuantificationView.cpp
QmitkFiberProcessingView.cpp
QmitkFiberClusteringView.cpp
+ QmitkInteractiveFiberDissectionView.cpp
QmitkFiberFitView.cpp
QmitkTractometryView.cpp
Perspectives/QmitkFiberProcessingPerspective.cpp
)
set(UI_FILES
src/internal/QmitkFiberQuantificationViewControls.ui
src/internal/QmitkFiberProcessingViewControls.ui
src/internal/QmitkFiberClusteringViewControls.ui
+ src/internal/QmitkInteractiveFiberDissectionViewControls.ui
src/internal/QmitkFiberFitViewControls.ui
src/internal/QmitkTractometryViewControls.ui
)
set(MOC_H_FILES
src/internal/mitkPluginActivator.h
src/internal/QmitkFiberQuantificationView.h
src/internal/QmitkFiberProcessingView.h
src/internal/QmitkFiberClusteringView.h
+ src/internal/QmitkInteractiveFiberDissectionView.h
src/internal/QmitkFiberFitView.h
src/internal/QmitkTractometryView.h
src/internal/Perspectives/QmitkFiberProcessingPerspective.h
)
set(CACHED_RESOURCE_FILES
plugin.xml
resources/FiberBundleOperations.png
resources/FiberQuantification.png
resources/FiberClustering.png
resources/FiberFit.png
resources/Tractometry.png
resources/circle.png
resources/polygon.png
+ resources/eraze.png
+ resources/highlighter.png
)
set(QRC_FILES
resources/QmitkFiberprocessing.qrc
+ resources/QmitkInteractiveFiberDissection.qrc
)
set(CPP_FILES )
foreach(file ${SRC_CPP_FILES})
set(CPP_FILES ${CPP_FILES} src/${file})
endforeach(file ${SRC_CPP_FILES})
foreach(file ${INTERNAL_CPP_FILES})
set(CPP_FILES ${CPP_FILES} src/internal/${file})
endforeach(file ${INTERNAL_CPP_FILES})
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/plugin.xml b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/plugin.xml
index 4150004..4a46258 100644
--- a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/plugin.xml
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/plugin.xml
@@ -1,163 +1,171 @@
+
+
+
+
This perspective contains all views necessary to post process fibers.
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/QmitkInteractiveFiberDissection.qrc b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/QmitkInteractiveFiberDissection.qrc
new file mode 100644
index 0000000..047b9e6
--- /dev/null
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/QmitkInteractiveFiberDissection.qrc
@@ -0,0 +1,9 @@
+
+
+ FiberBundle.png
+ circle.png
+ polygon.png
+ eraze.png
+ highlighter.png
+
+
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/eraze.png b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/eraze.png
new file mode 100644
index 0000000..d4ac1c0
Binary files /dev/null and b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/eraze.png differ
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/highlighter.png b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/highlighter.png
new file mode 100644
index 0000000..4fa7514
Binary files /dev/null and b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/highlighter.png differ
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/Perspectives/QmitkFiberProcessingPerspective.cpp b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/Perspectives/QmitkFiberProcessingPerspective.cpp
index 038ed58..4ad19e7 100644
--- a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/Perspectives/QmitkFiberProcessingPerspective.cpp
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/Perspectives/QmitkFiberProcessingPerspective.cpp
@@ -1,52 +1,53 @@
/*===================================================================
The Medical Imaging Interaction Toolkit (MITK)
Copyright (c) German Cancer Research Center.
All rights reserved.
This software is distributed WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE.
See LICENSE.txt or http://www.mitk.org for details.
===================================================================*/
#include "QmitkFiberProcessingPerspective.h"
#include "berryIViewLayout.h"
void QmitkFiberProcessingPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout)
{
/////////////////////////////////////////////////////
// all di-app perspectives should have the following:
/////////////////////////////////////////////////////
QString editorArea = layout->GetEditorArea();
layout->AddStandaloneViewPlaceholder("org.mitk.views.viewnavigatorview", berry::IPageLayout::LEFT, 0.3f, editorArea, false);
layout->AddStandaloneView("org.mitk.views.datamanager",
false, berry::IPageLayout::LEFT, 0.3f, editorArea);
layout->AddStandaloneView("org.mitk.views.controlvisualizationpropertiesview",
false, berry::IPageLayout::BOTTOM, .15f, "org.mitk.views.datamanager");
berry::IFolderLayout::Pointer left =
layout->CreateFolder("org.mbi.diffusionimaginginternal.leftcontrols",
berry::IPageLayout::BOTTOM, 0.15f, "org.mitk.views.controlvisualizationpropertiesview");
layout->AddStandaloneViewPlaceholder("org.mitk.views.imagenavigator",
berry::IPageLayout::BOTTOM, .7f, "org.mbi.diffusionimaginginternal.leftcontrols", false);
/////////////////////////////////////////////
// here goes the perspective specific stuff
/////////////////////////////////////////////
left->AddView("org.mitk.views.fiberprocessing");
left->AddView("org.mitk.views.fiberquantification");
+ left->AddView("org.mitk.views.interactivefiberdissection");
left->AddView("org.mitk.views.fiberclustering");
left->AddView("org.mitk.views.fiberfit");
left->AddView("org.mitk.views.tractometry");
}
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionView.cpp b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionView.cpp
new file mode 100644
index 0000000..bdf3d71
--- /dev/null
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionView.cpp
@@ -0,0 +1,15 @@
+/*===================================================================
+
+The Medical Imaging Interaction Toolkit (MITK)
+
+Copyright (c) German Cancer Research Center.
+
+All rights reserved.
+
+This software is distributed WITHOUT ANY WARRANTY; without
+even the implied warranty of MERCHANTABILITY or FITNESS FOR
+A PARTICULAR PURPOSE.
+
+See LICENSE.txt or http://www.mitk.org for details.
+
+===================================================================*/
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionView.h b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionView.h
new file mode 100644
index 0000000..0a9e1b6
--- /dev/null
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionView.h
@@ -0,0 +1,16 @@
+/*===================================================================
+
+The Medical Imaging Interaction Toolkit (MITK)
+
+Copyright (c) German Cancer Research Center.
+
+All rights reserved.
+
+This software is distributed WITHOUT ANY WARRANTY; without
+even the implied warranty of MERCHANTABILITY or FITNESS FOR
+A PARTICULAR PURPOSE.
+
+See LICENSE.txt or http://www.mitk.org for details.
+
+===================================================================*/
+
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionViewControls.ui b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionViewControls.ui
new file mode 100644
index 0000000..21ead88
--- /dev/null
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/QmitkInteractiveFiberDissectionViewControls.ui
@@ -0,0 +1,636 @@
+
+
+ QmitkInteractiveFiberDissectionViewControls
+
+
+
+ 0
+ 0
+ 417
+ 711
+
+
+
+ Form
+
+
+ QCommandLinkButton:disabled {
+ border: none;
+}
+
+QGroupBox {
+ background-color: transparent;
+}
+
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+
+ 9
+
+ -
+
+
+ Please Select Input Data
+
+
+
+ 6
+
+
+ 6
+
+
+ 6
+
+
+ 6
+
+
-
+
+
+ Input DTI
+
+
+ Fiber Bundle:
+
+
+
+ -
+
+
+ <html><head/><body><p><span style=" color:#ff0000;">mandatory</span></p></body></html>
+
+
+ true
+
+
+
+
+
+
+ -
+
+
+ true
+
+
+
+ true
+
+
+
+ Label Fibers
+
+
+ QFrame::NoFrame
+
+
+ 1
+
+
+ 6
+
+
+
+
+ 0
+ 0
+ 399
+ 492
+
+
+
+ Fiber Creation
+
+
+
-
+
+
+ QFrame::StyledPanel
+
+
+ QFrame::Raised
+
+
+
-
+
+
+ Add new Streamline Pointset
+
+
+
+ -
+
+
+ Add Streamline to Tractogram
+
+
+
+ -
+
+
+ Create Streamline
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 40
+
+
+
+
+ -
+
+
+ Selected Streamline Pointset
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ Streamline Points
+
+
+
-
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+
+ 0
+ 0
+ 399
+ 492
+
+
+
+
+
+
+ Fiber Labelling
+
+
+ Dissect/Eraze Fibers by Erasion and Highlighting
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ Streamlines belonging to Bundle
+
+
+
+ -
+
+
+ -
+
+
+ Streamlines not belonging to Bundle
+
+
+
+ -
+
+
+ Streamlines to be labeled
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+ true
+
+
+ ArrowCursor
+
+
+ QFrame::NoFrame
+
+
+ QFrame::Raised
+
+
+
-
+
+
+ Label individual Streamlines
+
+
+
+
+
+
+ -
+
+
+ QFrame::StyledPanel
+
+
+ QFrame::Raised
+
+
+
-
+
+
+
+ 30
+ 30
+
+
+
+
+
+
+
+ :/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/eraze.png:/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/eraze.png
+
+
+
+ 32
+ 32
+
+
+
+ true
+
+
+
+ -
+
+
+
+ 30
+ 30
+
+
+
+
+
+
+
+ :/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/highlighter.png:/org.mitk.gui.qt.diffusionimaging.fiberprocessing/resources/highlighter.png
+
+
+
+ 32
+ 32
+
+
+
+ true
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ Add
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Random Streamlines
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+ 0
+ 0
+ 399
+ 492
+
+
+
+ Active Learning
+
+
+
+
+ 9
+ 9
+ 341
+ 391
+
+
+
+ QFrame::StyledPanel
+
+
+ QFrame::Raised
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Train Classifier
+
+
+
+ -
+
+
+ 5
+
+
+ 10
+
+
+
+ -
+
+
+ Create Prediction
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Create Uncertanty Map
+
+
+
+ -
+
+
+ Add
+
+
+
+ -
+
+
+ To be labeled
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 84
+ 22
+
+
+
+
+
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Fixed
+
+
+
+ 20
+ 40
+
+
+
+
+
+
+
+
+ QmitkSingleNodeSelectionWidget
+ QWidget
+ QmitkSingleNodeSelectionWidget.h
+
+
+ QmitkPointListWidget
+ QWidget
+
+
+
+
+
+
diff --git a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/mitkPluginActivator.cpp b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/mitkPluginActivator.cpp
index 042b6c0..666fd1c 100644
--- a/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/mitkPluginActivator.cpp
+++ b/Plugins/org.mitk.gui.qt.diffusionimaging.fiberprocessing/src/internal/mitkPluginActivator.cpp
@@ -1,51 +1,53 @@
/*===================================================================
The Medical Imaging Interaction Toolkit (MITK)
Copyright (c) German Cancer Research Center.
All rights reserved.
This software is distributed WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE.
See LICENSE.txt or http://www.mitk.org for details.
===================================================================*/
#include "mitkPluginActivator.h"
#include "src/internal/Perspectives/QmitkFiberProcessingPerspective.h"
#include "src/internal/QmitkFiberProcessingView.h"
#include "src/internal/QmitkFiberQuantificationView.h"
+#include "src/internal/QmitkInteractiveFiberDissectionView.h"
#include "src/internal/QmitkFiberClusteringView.h"
#include "src/internal/QmitkFiberFitView.h"
#include "src/internal/QmitkTractometryView.h"
ctkPluginContext* mitk::PluginActivator::m_Context = nullptr;
ctkPluginContext* mitk::PluginActivator::GetContext()
{
return m_Context;
}
void mitk::PluginActivator::start(ctkPluginContext* context)
{
BERRY_REGISTER_EXTENSION_CLASS(QmitkFiberProcessingPerspective, context)
BERRY_REGISTER_EXTENSION_CLASS(QmitkFiberQuantificationView, context)
+ BERRY_REGISTER_EXTENSION_CLASS(QmitkInteractiveFiberDissectionView, context)
BERRY_REGISTER_EXTENSION_CLASS(QmitkFiberProcessingView, context)
BERRY_REGISTER_EXTENSION_CLASS(QmitkFiberClusteringView, context)
BERRY_REGISTER_EXTENSION_CLASS(QmitkFiberFitView, context)
BERRY_REGISTER_EXTENSION_CLASS(QmitkTractometryView, context)
m_Context = context;
}
void mitk::PluginActivator::stop(ctkPluginContext* context)
{
Q_UNUSED(context)
m_Context = nullptr;
}