Medical Imaging Interaction Toolkit  2018.4.99-389bf124
Medical Imaging Interaction Toolkit
QmitkSliceBasedInterpolatorWidget Class Reference

GUI for slices interpolation. More...

#include <QmitkSliceBasedInterpolatorWidget.h>

Inheritance diagram for QmitkSliceBasedInterpolatorWidget:
Collaboration diagram for QmitkSliceBasedInterpolatorWidget:

Public Slots

void OnToggleWidgetActivation (bool)
 Reaction to "Start/Stop" button click. More...
 

Signals

void signalSliceBasedInterpolationEnabled (bool)
 

Public Member Functions

 QmitkSliceBasedInterpolatorWidget (QWidget *parent=nullptr, const char *name=nullptr)
 
 ~QmitkSliceBasedInterpolatorWidget () override
 
void SetDataStorage (mitk::DataStorage &storage)
 
void SetSliceNavigationControllers (const QList< mitk::SliceNavigationController *> &controllers)
 
void OnToolManagerWorkingDataModified ()
 
void OnTimeChanged (itk::Object *sender, const itk::EventObject &)
 
void OnSliceChanged (itk::Object *sender, const itk::EventObject &)
 
void OnSliceNavigationControllerDeleted (const itk::Object *sender, const itk::EventObject &)
 
void OnSliceInterpolationInfoChanged (const itk::EventObject &)
 

Public Attributes

Ui::QmitkSliceBasedInterpolatorWidgetGUIControls m_Controls
 

Protected Types

typedef std::map< QAction *, mitk::SliceNavigationController * > ActionToSliceDimensionMapType
 

Protected Slots

void OnAcceptInterpolationClicked ()
 Reaction to "Accept Current Slice" button click. More...
 
void OnAcceptAllInterpolationsClicked ()
 
void OnAcceptAllPopupActivated (QAction *action)
 

Protected Member Functions

const ActionToSliceDimensionMapType CreateActionToSliceDimension ()
 
void AcceptAllInterpolations (mitk::SliceNavigationController *slicer)
 
void WaitCursorOn ()
 
void WaitCursorOff ()
 
void RestoreOverrideCursor ()
 
mitk::Image::Pointer GetWorkingSlice (const mitk::PlaneGeometry *planeGeometry)
 
void TranslateAndInterpolateChangedSlice (const itk::EventObject &e, mitk::SliceNavigationController *slicer)
 
void Interpolate (mitk::PlaneGeometry *plane, unsigned int timeStep, mitk::SliceNavigationController *slicer)
 
void UpdateVisibleSuggestion ()
 

Protected Attributes

ActionToSliceDimensionMapType m_ActionToSliceDimensionMap
 

Detailed Description

GUI for slices interpolation.

See also
QmitkInteractiveSegmentation
mitk::SegmentationInterpolation

While mitk::SegmentationInterpolation does the bookkeeping of interpolation (keeping track of which slices contain how much segmentation) and the algorithmic work, QmitkSliceBasedInterpolatorWidget is responsible to watch the GUI, to notice, which slice is currently visible. It triggers generation of interpolation suggestions and also triggers acception of suggestions.

Last contributor:

Author
maleike

Definition at line 55 of file QmitkSliceBasedInterpolatorWidget.h.

Member Typedef Documentation

◆ ActionToSliceDimensionMapType

Constructor & Destructor Documentation

◆ QmitkSliceBasedInterpolatorWidget()

◆ ~QmitkSliceBasedInterpolatorWidget()

QmitkSliceBasedInterpolatorWidget::~QmitkSliceBasedInterpolatorWidget ( )
override

Member Function Documentation

◆ AcceptAllInterpolations()

◆ CreateActionToSliceDimension()

const QmitkSliceBasedInterpolatorWidget::ActionToSliceDimensionMapType QmitkSliceBasedInterpolatorWidget::CreateActionToSliceDimension ( )
protected

◆ GetWorkingSlice()

mitk::Image::Pointer QmitkSliceBasedInterpolatorWidget::GetWorkingSlice ( const mitk::PlaneGeometry planeGeometry)
protected

Gets the working slice based on the given plane geometry and last saved interaction

Parameters
planeGeometrya plane geometry

Definition at line 278 of file QmitkSliceBasedInterpolatorWidget.cpp.

References mitk::Stepper::GetPos(), mitk::BaseController::GetTime(), MITK_ERROR, and mitk::ExtractSliceFilter::New().

Referenced by AcceptAllInterpolations(), and OnAcceptInterpolationClicked().

◆ Interpolate()

void QmitkSliceBasedInterpolatorWidget::Interpolate ( mitk::PlaneGeometry plane,
unsigned int  timeStep,
mitk::SliceNavigationController slicer 
)
protected

Given a PlaneGeometry, this method figures out which slice of the first working image (of the associated ToolManager) should be interpolated. The actual work is then done by our SegmentationInterpolation object.

Definition at line 255 of file QmitkSliceBasedInterpolatorWidget.cpp.

References mitk::SegTool2D::DetermineAffectedImageSlice().

Referenced by TranslateAndInterpolateChangedSlice().

◆ OnAcceptAllInterpolationsClicked

void QmitkSliceBasedInterpolatorWidget::OnAcceptAllInterpolationsClicked ( )
protectedslot

◆ OnAcceptAllPopupActivated

void QmitkSliceBasedInterpolatorWidget::OnAcceptAllPopupActivated ( QAction *  action)
protectedslot

◆ OnAcceptInterpolationClicked

◆ OnSliceChanged()

void QmitkSliceBasedInterpolatorWidget::OnSliceChanged ( itk::Object *  sender,
const itk::EventObject &  e 
)

◆ OnSliceInterpolationInfoChanged()

void QmitkSliceBasedInterpolatorWidget::OnSliceInterpolationInfoChanged ( const itk::EventObject &  )

Just public because it is called by itk::Commands. You should not need to call this.

Definition at line 651 of file QmitkSliceBasedInterpolatorWidget.cpp.

References UpdateVisibleSuggestion().

Referenced by QmitkSliceBasedInterpolatorWidget().

◆ OnSliceNavigationControllerDeleted()

void QmitkSliceBasedInterpolatorWidget::OnSliceNavigationControllerDeleted ( const itk::Object *  sender,
const itk::EventObject &   
)

◆ OnTimeChanged()

void QmitkSliceBasedInterpolatorWidget::OnTimeChanged ( itk::Object *  sender,
const itk::EventObject &  e 
)

◆ OnToggleWidgetActivation

◆ OnToolManagerWorkingDataModified()

void QmitkSliceBasedInterpolatorWidget::OnToolManagerWorkingDataModified ( )

◆ RestoreOverrideCursor()

void QmitkSliceBasedInterpolatorWidget::RestoreOverrideCursor ( )
protected

Definition at line 681 of file QmitkSliceBasedInterpolatorWidget.cpp.

Referenced by WaitCursorOff().

◆ SetDataStorage()

void QmitkSliceBasedInterpolatorWidget::SetDataStorage ( mitk::DataStorage storage)

Definition at line 125 of file QmitkSliceBasedInterpolatorWidget.cpp.

◆ SetSliceNavigationControllers()

void QmitkSliceBasedInterpolatorWidget::SetSliceNavigationControllers ( const QList< mitk::SliceNavigationController *> &  controllers)

Sets the slice navigation controllers for getting slice changed events from the views.

Definition at line 130 of file QmitkSliceBasedInterpolatorWidget.cpp.

References CreateActionToSliceDimension(), mitk::Stepper::GetPos(), mitk::BaseController::GetTime(), m_ActionToSliceDimensionMap, OnSliceChanged(), OnSliceNavigationControllerDeleted(), and OnTimeChanged().

◆ signalSliceBasedInterpolationEnabled

void QmitkSliceBasedInterpolatorWidget::signalSliceBasedInterpolationEnabled ( bool  )
signal

◆ TranslateAndInterpolateChangedSlice()

void QmitkSliceBasedInterpolatorWidget::TranslateAndInterpolateChangedSlice ( const itk::EventObject &  e,
mitk::SliceNavigationController slicer 
)
protected

Retrieves the currently selected PlaneGeometry from a SlicedGeometry3D that is generated by a SliceNavigationController and calls Interpolate to further process this PlaneGeometry into an interpolation.

Parameters
eis a actually a mitk::SliceNavigationController::GeometrySliceEvent, sent by a SliceNavigationController
slicethe SliceNavigationController

Definition at line 230 of file QmitkSliceBasedInterpolatorWidget.cpp.

References mitk::TimeGeometry::GetGeometryForTimeStep(), mitk::SlicedGeometry3D::GetPlaneGeometry(), mitk::SliceNavigationController::TimeGeometryEvent::GetPos(), mitk::SliceNavigationController::TimeGeometryEvent::GetTimeGeometry(), and Interpolate().

Referenced by OnSliceChanged(), and UpdateVisibleSuggestion().

◆ UpdateVisibleSuggestion()

void QmitkSliceBasedInterpolatorWidget::UpdateVisibleSuggestion ( )
protected

◆ WaitCursorOff()

void QmitkSliceBasedInterpolatorWidget::WaitCursorOff ( )
protected

Definition at line 676 of file QmitkSliceBasedInterpolatorWidget.cpp.

References RestoreOverrideCursor().

◆ WaitCursorOn()

void QmitkSliceBasedInterpolatorWidget::WaitCursorOn ( )
protected

Definition at line 671 of file QmitkSliceBasedInterpolatorWidget.cpp.

Member Data Documentation

◆ m_ActionToSliceDimensionMap

ActionToSliceDimensionMapType QmitkSliceBasedInterpolatorWidget::m_ActionToSliceDimensionMap
protected

◆ m_Controls

Ui::QmitkSliceBasedInterpolatorWidgetGUIControls QmitkSliceBasedInterpolatorWidget::m_Controls

The documentation for this class was generated from the following files: