diff --git a/Modules/ImageStatisticsUI/Qmitk/QmitkHistogramVisualizationWidget.ui b/Modules/ImageStatisticsUI/Qmitk/QmitkHistogramVisualizationWidget.ui
index d96c7cb2bf..2f07db2bf2 100644
--- a/Modules/ImageStatisticsUI/Qmitk/QmitkHistogramVisualizationWidget.ui
+++ b/Modules/ImageStatisticsUI/Qmitk/QmitkHistogramVisualizationWidget.ui
@@ -1,332 +1,316 @@
QmitkHistogramVisualizationControls
0
0
540
- 460
+ 468
-
-
- 540
- 460
-
-
Form
-
-
- false
-
-
-
- 0
- 0
- 530
- 450
-
-
-
-
- 400
- 450
-
-
-
-
-
-
- false
-
-
- -
-
-
- false
-
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
-
-
- 120
- 120
- 120
-
-
-
-
-
-
- 120
- 120
- 120
-
-
-
-
-
-
- 120
- 120
- 120
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
- false
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
-
- 16777215
- 16777215
-
-
-
- Plot
-
-
-
-
-
-
- Show Subchart
-
-
- true
-
-
-
- -
-
-
- Use default #bins
-
-
- true
-
-
-
- -
-
-
- QFrame::NoFrame
-
-
- QFrame::Raised
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 60
- 0
-
-
-
-
- 100
- 16777215
-
+
+
-
+
+
+ false
+
+
+
+
+
+ false
+
+
+
-
+
+
+ false
+
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+
+ 16777215
+ 16777215
+
+
+
+ Plot
+
+
+
-
+
+
+ Show Subchart
+
+
+ true
+
+
+
+ -
+
+
+ Use default #bins
+
+
+ true
+
+
+
+ -
+
+
+ QFrame::NoFrame
+
+
+ QFrame::Raised
+
+
+
+ 0
-
- # bins:
+
+ 0
-
-
- -
-
-
- false
+
+ 0
-
- Press enter to recalculate statistics with new bin size.
+
+ 0
-
- 1
+
+ 0
-
- 10000
-
-
- 100
-
-
-
-
-
-
-
-
-
- -
-
-
- -
-
-
-
-
-
-
- -
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 0
- 0
-
+
-
+
+
+
+ 60
+ 0
+
+
+
+
+ 100
+ 16777215
+
+
+
+ # bins:
+
+
+
+ -
+
+
+ false
+
+
+ Press enter to recalculate statistics with new bin size.
+
+
+ 1
+
+
+ 10000
+
+
+ 100
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+ 0
+
+
+ 0
-
- Copy to Clipboard
+
+ 0
-
-
- -
-
-
- Qt::Horizontal
+
+ 0
-
-
- 40
- 20
-
+
+ 0
-
-
-
-
-
-
-
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Copy to Clipboard
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+
+
+
+
+
+
+
QmitkChartWidget
QWidget
diff --git a/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.cpp b/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.cpp
index cfe1a21d7c..5980d61bbd 100644
--- a/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.cpp
+++ b/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.cpp
@@ -1,104 +1,105 @@
/*===================================================================
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
A PARTICULAR PURPOSE.
See LICENSE.txt or http://www.mitk.org for details.
===================================================================*/
#include "QmitkIntensityProfileVisualizationWidget.h"
#include
QmitkIntensityProfileVisualizationWidget::QmitkIntensityProfileVisualizationWidget(QWidget* parent) : QWidget(parent)
{
m_Controls.setupUi(this);
CreateConnections();
}
void QmitkIntensityProfileVisualizationWidget::SetIntensityProfile(mitk::IntensityProfile::ConstPointer intensityProfile, const std::string& dataLabel)
{
if (intensityProfile == nullptr)
return;
m_IntensityProfileList = mitk::CreateVectorFromIntensityProfile(intensityProfile);
if (m_IntensityProfileList.empty())
return;
m_Controls.chartWidget->AddData1D(m_IntensityProfileList, dataLabel);
m_Controls.chartWidget->SetChartType(dataLabel, QmitkChartWidget::ChartType::line);
m_Controls.chartWidget->SetXAxisLabel("Distance");
m_Controls.chartWidget->SetYAxisLabel("Intensity");
m_Controls.chartWidget->Show(m_Controls.checkBoxShowSubchart->isChecked());
SetGUIElementsEnabled(true);
}
void QmitkIntensityProfileVisualizationWidget::Reset()
{
m_Controls.chartWidget->Clear();
SetGUIElementsEnabled(false);
+ m_IntensityProfileList.clear();
}
void QmitkIntensityProfileVisualizationWidget::CreateConnections()
{
connect(m_Controls.checkBoxShowSubchart, &QCheckBox::clicked, this, &QmitkIntensityProfileVisualizationWidget::OnShowSubchartCheckBoxChanged);
connect(m_Controls.buttonCopyToClipboard, &QPushButton::clicked, this, &QmitkIntensityProfileVisualizationWidget::OnClipboardButtonClicked);
}
void QmitkIntensityProfileVisualizationWidget::SetGUIElementsEnabled(bool enabled)
{
this->setEnabled(enabled);
m_Controls.groupBoxIntensityProfile->setEnabled(enabled);
m_Controls.groupBoxPlot->setEnabled(enabled);
m_Controls.buttonCopyToClipboard->setEnabled(enabled);
m_Controls.checkBoxShowSubchart->setEnabled(enabled);
m_Controls.chartWidget->setEnabled(enabled);
m_Controls.labelIntensityProfileIsInvisibleWarning->setEnabled(enabled);
m_Controls.labelInfo->setEnabled(enabled);
}
std::vector QmitkIntensityProfileVisualizationWidget::ConvertIntensityProfileToVector(mitk::IntensityProfile::ConstPointer intensityProfile) const
{
std::vector intensityProfileList;
if (intensityProfile != nullptr)
{
auto end = intensityProfile->End();
for (auto it = intensityProfile->Begin(); it != end; ++it)
{
intensityProfileList.push_back(it.GetMeasurementVector()[0]);
}
}
return intensityProfileList;
}
void QmitkIntensityProfileVisualizationWidget::OnClipboardButtonClicked()
{
if (m_IntensityProfileList.empty())
return;
QApplication::clipboard()->clear();
QString clipboard("Pixel \t Intensity\n");
for (unsigned int i = 0; i < m_IntensityProfileList.size(); i++)
{
clipboard = clipboard.append("%L1 \t %L2\n")
.arg(QString::number(i))
.arg(QString::number(m_IntensityProfileList.at(i)));
}
QApplication::clipboard()->setText(clipboard, QClipboard::Clipboard);
}
void QmitkIntensityProfileVisualizationWidget::OnShowSubchartCheckBoxChanged()
{
m_Controls.chartWidget->Show(m_Controls.checkBoxShowSubchart->isChecked());
}
diff --git a/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.ui b/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.ui
index 69e1974d51..d49f3477a8 100644
--- a/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.ui
+++ b/Modules/ImageStatisticsUI/Qmitk/QmitkIntensityProfileVisualizationWidget.ui
@@ -1,257 +1,241 @@
QmitkIntensityProfileControls
0
0
540
- 460
+ 468
-
-
- 540
- 460
-
-
Form
-
-
- false
-
-
-
- 0
- 0
- 530
- 450
-
-
-
-
- 400
- 450
-
-
-
-
-
-
- false
-
-
- -
-
-
- false
-
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
- 255
- 0
- 0
-
-
-
-
-
-
-
-
- 120
- 120
- 120
-
-
-
-
-
-
- 120
- 120
- 120
-
-
-
-
-
-
- 120
- 120
- 120
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
- false
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
-
- 16777215
- 16777215
-
-
-
- Plot
-
-
-
-
-
-
- Show Subchart
-
-
- true
+
+
-
+
+
+ false
+
+
+
+
+
+ false
+
+
+
-
+
+
+ false
+
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+ 255
+ 0
+ 0
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+
+ 16777215
+ 16777215
+
+
+
+ Plot
+
+
+
-
+
+
+ Show Subchart
+
+
+ true
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+ 0
-
-
-
-
-
- -
-
-
- -
-
-
-
-
-
-
- -
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 0
- 0
-
+
+ 0
-
- Copy to Clipboard
+
+ 0
-
-
- -
-
-
- Qt::Horizontal
+
+ 0
-
-
- 40
- 20
-
+
+ 0
-
-
-
-
-
-
-
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Copy to Clipboard
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+
+
+
+
+
+
+
QmitkChartWidget
QWidget