wxProcessingCTWidget.h

Go to the documentation of this file.
00001 
00002 
00003 #ifndef __WX__PROCESSING__CT__WIDGET__
00004 #define __WX__PROCESSING__CT__WIDGET__
00005 
00006 
00007 
00008 #include <vtkActor.h>
00009 #include <vtkMarchingCubes.h>   
00010 #include <vtkPolyDataMapper.h>
00011 #include <vtkImageThreshold.h>
00012 #include <vtkImageData.h>
00013 #include <vtkImageSeedConnectivity.h>
00014 
00015 
00016 
00017 
00018 #include "wxMPRWidget.h"
00019 #include "wxVTKRenderWindowInteractor.h"
00020 #include <kernel/axisExtractor02.h>
00021 
00022 #include <kernel/marInterfaceCT.h>
00023 #include <kernel/marAxis.h>
00024 
00025 
00026 #include <wx/wx.h>
00027 #include <wx/panel.h>
00028 
00029 //------------------------------------------------------------------
00030 //------------------------------------------------------------------
00031 //------------------------------------------------------------------
00032 
00033 class wxProcessingCTWidget: public wxPanel{
00034 public:
00035         wxProcessingCTWidget(wxWindow *parent, marInterfaceCT *mar);
00036         ~wxProcessingCTWidget();
00037         void ConfigureVTK(marImageData *marimagedata, int x, int y, int z);
00038         void Refresh();
00039         void OnLowThreshold(wxScrollEvent& event); // Umbral inferior
00040         void OnMidThreshold(wxScrollEvent& event); // Umbral medio
00041         void LowThreshold();
00042         void MidThreshold();
00043 
00044 // MAZV 27 sep 2006
00045 //      void OnHighThreshold(wxScrollEvent& event); // Umbral alto
00046         void OnZSlice(wxScrollEvent& event); // Z Slice
00047         void OnExtract(wxCommandEvent& event);
00048         void OnRefreshView(wxCommandEvent & event);
00049 
00050         void SetThreshold(int min       ,int max);
00051         void GetThreshold(int *min      ,int *max);
00052 
00053         void OnSpinLowThresholdSpin1(wxScrollEvent& event);
00054         void OnSpinLowThresholdSpin2(wxScrollEvent& event);
00055 
00056 
00057 
00058 private:
00059         wxWindow                                        *_parent;
00060 
00061         // Original Volume
00062         vtkMarchingCubes        *_mCubes;
00063         vtkPolyDataMapper       *_surfMapper;
00064         vtkActor                        *_surfActor;
00065 
00066         marInterfaceCT          *_mar;
00067 
00068         // New vtk - thresholding
00069         
00070         vtkImageThreshold                       *_thresh;  //Lower - Upper
00071         vtkImageThreshold                       *_thresh2; //Lower - Medium
00072 
00073         
00074         vtkImageSeedConnectivity        *_connect;
00075         vtkImageSeedConnectivity        *_connect2;
00076         vtkImageCast                            *cast3;
00077         vtkImageCast                            *cast4;
00078         vtkImageData                            *data;
00079         
00080 
00081         wxSlider                                        *_lowthreshold;
00082         wxSlider                                        *_midthreshold;
00083 
00084         wxSlider                                        *_lowthresholdSpin1;
00085         wxSlider                                        *_lowthresholdSpin2;
00086 
00087 
00088 // MAZV 27 sep 2006
00089 //wxSlider                                              *_highthreshold;
00090         wxSlider                                        *_zslice;
00091         wxVtk2DBaseView                         *_imageviewer2D_1;
00092         wxVtk2DBaseView                         *_imageviewer2D_2;
00093         wxVtk2DBaseView                         *_imageviewer2D_3;
00094 
00095         wxButton                                        *_extract;
00096 
00097         vtkBaseData                                     *_vtkbasedata_1;
00098         vtkBaseData                                     *_vtkbasedata_2;
00099         vtkBaseData                                     *_vtkbasedata_3;
00100 
00101         wxPanel                                         *CreateControlPanel(wxWindow *parent);
00102         wxPanel                                         *CreateViewPanel(wxWindow *parent);
00103 
00104         int                     _x, _y, _z;
00105     double              _range[2];
00106 
00107         DECLARE_EVENT_TABLE( );
00108 
00109 
00110 };
00111 
00112 #endif // __WX__PROCESSING__CT__WIDGET__
00113 
00114 
00115 
00116 

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1