#include <QmitkColourImageProcessingView.h>
Public Member Functions | |
QmitkColourImageProcessingView () | |
virtual | ~QmitkColourImageProcessingView () |
virtual void | CreateQtPartControl (QWidget *parent) |
virtual void | SelectionChanged (berry::IWorkbenchPart::Pointer part, berry::ISelection::ConstPointer selection) |
Static Public Attributes | |
static const std::string | VIEW_ID = "org.mitk.views.colourimageprocessing" |
Protected Slots | |
void | OnConvertToRGBAImage () |
void | OnConvertImageMaskColorToRGBAImage () |
void | OnCombineRGBA () |
void | OnChangeColor () |
Protected Attributes | |
Ui::QmitkColourImageProcessingViewControls * | m_Controls |
QmitkStdMultiWidget * | m_MultiWidget |
berry::ISelectionListener::Pointer | m_SelectionListener |
Definition at line 35 of file QmitkColourImageProcessingView.h.
QmitkColourImageProcessingView::QmitkColourImageProcessingView | ( | ) |
Definition at line 43 of file QmitkColourImageProcessingView.cpp.
References m_Controls.
: QmitkFunctionality(), m_MultiWidget(NULL) { m_Controls=NULL; m_Color[0]= 255; m_Color[1]= 0; m_Color[2]= 0; }
QmitkColourImageProcessingView::~QmitkColourImageProcessingView | ( | ) | [virtual] |
Definition at line 54 of file QmitkColourImageProcessingView.cpp.
References berry::WorkbenchPart::GetSite(), m_SelectionListener, and berry::ISelectionService::RemoveSelectionListener().
{ berry::ISelectionService* s = GetSite()->GetWorkbenchWindow()->GetSelectionService(); if(s) s->RemoveSelectionListener(m_SelectionListener); }
void QmitkColourImageProcessingView::CreateQtPartControl | ( | QWidget * | parent ) | [virtual] |
Implements berry::QtViewPart.
Definition at line 61 of file QmitkColourImageProcessingView.cpp.
References berry::ISelectionService::AddSelectionListener(), berry::WorkbenchPart::GetSite(), Ui_QmitkColourImageProcessingViewControls::m_ColorButton, Ui_QmitkColourImageProcessingViewControls::m_CombineRGBAButton, m_Controls, Ui_QmitkColourImageProcessingViewControls::m_ConvertImageMaskColorToRGBA, Ui_QmitkColourImageProcessingViewControls::m_ConvertImageMaskToRGBA, Ui_QmitkColourImageProcessingViewControls::m_ConvertImageToRGBA, Ui_QmitkColourImageProcessingViewControls::m_ImageSelectedLabel, Ui_QmitkColourImageProcessingViewControls::m_NoImageSelectedLabel, m_SelectionListener, OnChangeColor(), OnCombineRGBA(), OnConvertImageMaskColorToRGBAImage(), OnConvertToRGBAImage(), SelectionChanged(), and Ui_QmitkColourImageProcessingViewControls::setupUi().
{ if (!m_Controls) { m_Controls = new Ui::QmitkColourImageProcessingViewControls; m_Controls->setupUi(parent); connect( m_Controls->m_ConvertImageToRGBA, SIGNAL( clicked(bool) ),this, SLOT( OnConvertToRGBAImage() )); connect( m_Controls->m_ConvertImageMaskToRGBA, SIGNAL( clicked(bool) ),this, SLOT( OnConvertToRGBAImage() )); connect( m_Controls->m_ConvertImageMaskColorToRGBA, SIGNAL( clicked(bool) ),this, SLOT( OnConvertImageMaskColorToRGBAImage() )); connect( m_Controls->m_ColorButton, SIGNAL( clicked(bool) ),this, SLOT( OnChangeColor() )); connect( m_Controls->m_CombineRGBAButton, SIGNAL( clicked(bool) ),this, SLOT( OnCombineRGBA() )); m_Controls->m_ImageSelectedLabel->hide(); m_Controls->m_NoImageSelectedLabel->show(); } m_SelectionListener = berry::ISelectionListener::Pointer(new berry::SelectionChangedAdapter<QmitkColourImageProcessingView> (this, &QmitkColourImageProcessingView::SelectionChanged)); berry::ISelectionService* s = GetSite()->GetWorkbenchWindow()->GetSelectionService(); if(s) s->AddSelectionListener(m_SelectionListener); }
void QmitkColourImageProcessingView::OnChangeColor | ( | ) | [protected, slot] |
Definition at line 245 of file QmitkColourImageProcessingView.cpp.
References Ui_QmitkColourImageProcessingViewControls::m_ColorButton, and m_Controls.
Referenced by CreateQtPartControl().
{ QColor color = QColorDialog::getColor(); if (color.spec() == 0) { color.setRed(255); color.setGreen(0); color.setBlue(0); } m_Color[0]= color.red(); m_Color[1]= color.green(); m_Color[2]= color.blue(); m_Controls->m_ColorButton->setStyleSheet(QString("background-color:rgb(%1,%2, %3)").arg(color.red()).arg(color.green()).arg(color.blue())); }
void QmitkColourImageProcessingView::OnCombineRGBA | ( | ) | [protected, slot] |
Definition at line 263 of file QmitkColourImageProcessingView.cpp.
References mitk::mitkColourImageProcessor::combineRGBAImage(), QmitkFunctionality::GetDefaultDataStorage(), mitk::WeakPointer< TObjectType >::IsNull(), MITK_INFO, and mitk::DataNode::New().
Referenced by CreateQtPartControl().
{ if(m_SelectedNode.IsNull()) return; if(m_SelectedNode2.IsNull()) return; mitk::mitkColourImageProcessor CImageProcessor; mitk::Image::Pointer RGBAImageResult; RGBAImageResult = CImageProcessor.combineRGBAImage(dynamic_cast<mitk::Image*>(m_SelectedNode->GetData()),dynamic_cast<mitk::Image*>(m_SelectedNode2->GetData())); MITK_INFO <<"RGBAImage Result"; mitk::DataNode::Pointer dtn = mitk::DataNode::New(); dtn->SetData( RGBAImageResult ); this->GetDefaultDataStorage()->Add( dtn ); // add as a child, because the segmentation "derives" from the original }
void QmitkColourImageProcessingView::OnConvertImageMaskColorToRGBAImage | ( | ) | [protected, slot] |
Definition at line 200 of file QmitkColourImageProcessingView.cpp.
References mitk::mitkColourImageProcessor::convertToRGBAImage(), mitk::mitkColourImageProcessor::convertWithBinaryAndColorToRGBAImage(), QmitkFunctionality::GetDefaultDataStorage(), mitk::TransferFunctionProperty::GetValue(), mitk::WeakPointer< TObjectType >::IsNotNull(), mitk::WeakPointer< TObjectType >::IsNull(), and mitk::DataNode::New().
Referenced by CreateQtPartControl().
{ if(m_SelectedNode.IsNull()) return; mitk::TransferFunctionProperty::Pointer transferFunctionProp = dynamic_cast<mitk::TransferFunctionProperty*>(m_SelectedNode->GetProperty("TransferFunction")); if(transferFunctionProp.IsNull()) return; mitk::TransferFunction::Pointer tf = transferFunctionProp->GetValue(); if(tf.IsNull()) return; mitk::mitkColourImageProcessor CImageProcessor; mitk::Image::Pointer RGBAImageResult; if(m_SelectedNode2.IsNotNull()) { RGBAImageResult = CImageProcessor.convertWithBinaryAndColorToRGBAImage(dynamic_cast<mitk::Image*>(m_SelectedNode->GetData()),dynamic_cast<mitk::Image*>(m_SelectedNode2->GetData()),tf, m_Color); } else { RGBAImageResult = CImageProcessor.convertToRGBAImage(dynamic_cast<mitk::Image*>(m_SelectedNode->GetData()),tf); } if (!RGBAImageResult) { QMessageBox::warning(NULL, "Warning", QString("Unsupported pixeltype")); return; } mitk::DataNode::Pointer dtn = mitk::DataNode::New(); dtn->SetData( RGBAImageResult ); dtn->SetName(m_SelectedNode->GetName() + "_RGBA"); this->GetDefaultDataStorage()->Add( dtn ); // add as a child, because the segmentation "derives" from the original }
void QmitkColourImageProcessingView::OnConvertToRGBAImage | ( | ) | [protected, slot] |
Definition at line 155 of file QmitkColourImageProcessingView.cpp.
References mitk::mitkColourImageProcessor::convertToRGBAImage(), mitk::mitkColourImageProcessor::convertWithBinaryToRGBAImage(), QmitkFunctionality::GetDefaultDataStorage(), mitk::TransferFunctionProperty::GetValue(), mitk::WeakPointer< TObjectType >::IsNotNull(), mitk::WeakPointer< TObjectType >::IsNull(), MITK_INFO, and mitk::DataNode::New().
Referenced by CreateQtPartControl().
{ if(m_SelectedNode.IsNull()) return; mitk::TransferFunctionProperty::Pointer transferFunctionProp = dynamic_cast<mitk::TransferFunctionProperty*>(m_SelectedNode->GetProperty("TransferFunction")); if(transferFunctionProp.IsNull()) return; mitk::TransferFunction::Pointer tf = transferFunctionProp->GetValue(); if(tf.IsNull()) return; mitk::mitkColourImageProcessor CImageProcessor; mitk::Image::Pointer RGBAImageResult; if(m_SelectedNode2.IsNotNull()) { RGBAImageResult = CImageProcessor.convertWithBinaryToRGBAImage(dynamic_cast<mitk::Image*>(m_SelectedNode->GetData()),dynamic_cast<mitk::Image*>(m_SelectedNode2->GetData()),tf); } else { RGBAImageResult = CImageProcessor.convertToRGBAImage(dynamic_cast<mitk::Image*>(m_SelectedNode->GetData()),tf); } if (!RGBAImageResult) { QMessageBox::warning(NULL, "Warning", QString("Unsupported pixeltype")); return; } mitk::DataNode::Pointer dtn = mitk::DataNode::New(); dtn->SetData( RGBAImageResult ); dtn->SetName(m_SelectedNode->GetName() + "_RGBA"); this->GetDefaultDataStorage()->Add( dtn ); // add as a child, because the segmentation "derives" from the original MITK_INFO << "convertToRGBAImage finish"; }
void QmitkColourImageProcessingView::SelectionChanged | ( | berry::IWorkbenchPart::Pointer | part, |
berry::ISelection::ConstPointer | selection | ||
) | [virtual] |
Definition at line 90 of file QmitkColourImageProcessingView.cpp.
References berry::SmartPointer< TObjectType >::Cast(), mitk::DataNodeObject::GetDataNode(), berry::SmartPointer< TObjectType >::IsNotNull(), m_Controls, Ui_QmitkColourImageProcessingViewControls::m_ImageSelectedLabel, and Ui_QmitkColourImageProcessingViewControls::m_NoImageSelectedLabel.
Referenced by CreateQtPartControl().
{ mitk::DataNodeSelection::ConstPointer _DataNodeSelection = selection.Cast<const mitk::DataNodeSelection>(); if(_DataNodeSelection.IsNotNull()) { std::vector<mitk::DataNode*> selectedNodes; mitk::DataNodeObject* _DataNodeObject = 0; for(mitk::DataNodeSelection::iterator it = _DataNodeSelection->Begin();it != _DataNodeSelection->End(); ++it) { _DataNodeObject = dynamic_cast<mitk::DataNodeObject*>((*it).GetPointer()); if(_DataNodeObject) { mitk::DataNode::Pointer node = _DataNodeObject->GetDataNode(); if( node.IsNotNull() && dynamic_cast<mitk::Image*>(node->GetData())&&dynamic_cast<mitk::Image*>(node->GetData())->GetDimension()>=3 ) selectedNodes.push_back( node ); } } mitk::DataNode::Pointer node; if(selectedNodes.size() > 0) node=selectedNodes[0]; if( node.IsNotNull() ) { m_SelectedNode = node; m_Controls->m_NoImageSelectedLabel->hide(); m_Controls->m_ImageSelectedLabel->show(); std::string infoText = std::string("Selected Image: ") + node->GetName(); if(selectedNodes.size() > 1) { mitk::DataNode::Pointer node2; node2=selectedNodes[1]; m_SelectedNode2=node2; infoText = infoText + " and " + node2->GetName(); } else { m_SelectedNode2= 0; } m_Controls->m_ImageSelectedLabel->setText( QString( infoText.c_str() ) ); } else { m_Controls->m_ImageSelectedLabel->hide(); m_Controls->m_NoImageSelectedLabel->show(); m_SelectedNode = 0; m_SelectedNode2= 0; } } }
Definition at line 61 of file QmitkColourImageProcessingView.h.
Referenced by CreateQtPartControl(), OnChangeColor(), QmitkColourImageProcessingView(), and SelectionChanged().
Definition at line 63 of file QmitkColourImageProcessingView.h.
Definition at line 65 of file QmitkColourImageProcessingView.h.
Referenced by CreateQtPartControl(), and ~QmitkColourImageProcessingView().
const std::string QmitkColourImageProcessingView::VIEW_ID = "org.mitk.views.colourimageprocessing" [static] |
Definition at line 42 of file QmitkColourImageProcessingView.h.