00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision: 13136 $ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 #if !defined(QMITK_ISOSURFACE_H__INCLUDED) 00019 #define QMITK_ISOSURFACE_H__INCLUDED 00020 00021 #include "QmitkFunctionality.h" 00022 #include "mitkColorSequenceRainbow.h" 00023 #include "mitkDataStorage.h" 00024 #include "ui_QmitkIsoSurfaceControls.h" 00025 00026 //class QmitkStdMultiWidget; 00027 //class QmitkIsoSurfaceControls; 00028 00035 class QmitkIsoSurface : public QObject, public QmitkFunctionality 00036 { 00037 Q_OBJECT 00038 00039 public: 00043 QmitkIsoSurface(QObject *parent=0, const char *name=0); 00044 00045 virtual ~QmitkIsoSurface(); 00046 00050 //virtual QWidget * CreateControlWidget(QWidget *parent); 00051 virtual void CreateQtPartControl(QWidget *parent); 00052 00056 //virtual QWidget * CreateMainWidget(QWidget * parent); 00057 00061 virtual void CreateConnections(); 00062 00066 //virtual QAction * CreateAction(QActionGroup *parent); 00067 00071 virtual void StdMultiWidgetAvailable(QmitkStdMultiWidget& stdMultiWidget); 00075 virtual void StdMultiWidgetNotAvailable(); 00076 00077 protected slots: 00078 00079 virtual void DataStorageChanged(); 00080 00081 /* 00082 * just an example slot for the example TreeNodeSelector widget 00083 */ 00084 void ImageSelected(const mitk::DataNode* item); 00085 00089 void CreateSurface(); 00090 00091 protected: 00096 //QmitkStdMultiWidget * m_MultiWidget; 00097 00101 Ui::QmitkIsoSurfaceControls * m_Controls; 00102 00106 mitk::Image* m_MitkImage; 00107 00111 float getThreshold(); 00112 00116 int m_SurfaceCounter; 00117 00118 mitk::ColorSequenceRainbow m_RainbowColor; 00119 }; 00120 00121 #endif // !defined(QMITK_ISOSURFACE_H__INCLUDED) 00122