wxSegmentationFM3DWidget.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   wxMaracas
00004   Module:    $RCSfile: wxSegmentationFM3DWidget.h,v $
00005   Language:  C++
00006   Date:      $Date: 2009/05/14 13:54:57 $
00007   Version:   $Revision: 1.1 $
00008 
00009   Copyright: (c) 2002, 2003
00010   License:
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 notice for more information.
00015 
00016 =========================================================================*/
00017 
00018 #ifndef __WX__SEGMENTATION__FM3D__HXX__
00019 #define __WX__SEGMENTATION__FM3D__HXX__
00020 
00021 /*
00022 #include <vector>
00023 
00024 #include <vtkObjectBase.h>
00025 #include <vtkCommand.h>
00026 #include <vtkActor.h>
00027 #include <vtkPoints.h>
00028 #include <vtkPolyData.h>
00029 #include <vtkPolyDataMapper.h>
00030 #include <vtkProbeFilter.h>
00031 #include <vtkPlaneSource.h> 
00032 #include <vtkImageChangeInformation.h>
00033 #include <vtkStructuredPoints.h> 
00034 #include <vtkTransform.h> 
00035 #include <vtkImageViewer2.h> 
00036 #include <vtkBoxWidget.h>
00037 */
00038              
00039 /*
00040 #include "kernel/marInterface.h"
00041 
00042 #include "wxMPRBaseData.h"
00043 #include "wxVtkBaseView.h"
00044 */
00045 
00046 
00047 #include <wx/notebook.h>
00048 
00049 #include "vtkImageGaussianSmooth.h"
00050 #include "vtkSmoothPolyDataFilter.h"
00051 
00052 #include "wxMPRWidget.h"
00053 #include "../manualContour.h"
00054 
00055 #include "itkFM3D.h"
00056 
00057 
00058 //------------------------------------------------------------------
00059 //------------------------------------------------------------------
00060 //------------------------------------------------------------------
00061 
00062 
00063 class wxSegmentationFM3DWidget : public wxPanel
00064 {
00065 public:
00066     wxSegmentationFM3DWidget(wxWindow* parent,marImageData *marimageData,double voxelSize);
00067         ~wxSegmentationFM3DWidget( );
00068 
00069         void ConfigureVTK();
00070 
00071         void RefreshView();
00072         void OnRefreshView(wxCommandEvent & event);
00073 
00074 
00075         vtkMPRBaseData          *GetVtkMPRBaseData();
00076         vtkPlane2DView          *GetVtkPlane2DView();
00077 
00078 
00079 
00080 private:
00081         double                                                          _voxelSize;
00082         marImageData                                            *_marimageData; 
00083         wxMPRWidget2                                            *_MPRWidget2;
00084 
00085         //
00086         wxVtk3DBaseView                                         *_wxvtk3Dbaseview_Clipping3D_C;
00087         wxVtkMPR3DView                                          *_wxvtkmpr3Dview_C;
00088         wxVtkClipping3DView                                     *_wxvtkclipping3Dview_C;
00089 
00090         wxPanel         *Create3DViewContour( wxWindow *parent, vtkMPRBaseData *vtkmprbasedata);
00091         void            ConfigureContour();
00092 
00093         //DCH: CONTROLES INTERFAZ GRAFICA
00094 
00095         wxSlider* slAlpha;
00096         wxSlider* slBeta;
00097         wxButton* btnSegment;
00098         wxButton* btnUndo;
00099         wxSlider* slVolumeOpacity;
00100         wxSlider* slSigmaLevel;
00101         wxSlider* slLaplacianConvergence;
00102         wxSlider* slLaplacianIterations;
00103 
00104 
00105         void OnChangeAlpha(wxScrollEvent& event);
00106         void OnChangeBeta(wxScrollEvent& event);
00107         void OnBtnSegment(wxCommandEvent& event);
00108         void OnBtnUndo(wxCommandEvent& event);
00109         void OnChangeOpacity(wxScrollEvent& event);
00110         void OnChangeSigmaLevel(wxScrollEvent& event);
00111         void OnChangeLaplacianConvergence(wxScrollEvent& event);
00112         void OnChangeLaplacianIteration(wxScrollEvent& event);
00113 
00114 
00115         // DHC: MODELO
00116         itkFM3D* filtroSegmentacion;
00117         double alphaValue;
00118         double betaValue;
00119         double opacityValue;
00120         double sigmaValue;
00121         float convergenceValue;
00122         int        iterationsValue;
00123 
00124         // DHC: RENDERIZACION VTK
00125         vtkImageGaussianSmooth*         f_gauss;
00126         vtkMarchingCubes*                       f_cubes;
00127         vtkSmoothPolyDataFilter*        f_laplace;
00128         vtkPolyDataMapper*                      f_mapper;
00129         vtkActor*                                       f_actor;
00130 
00131 
00132 
00133         DECLARE_EVENT_TABLE( );
00134 
00135 
00136 
00137 };
00138 
00139 
00140 
00141 
00142 #endif // __WX__SEGMENTATION__FM3D__HXX__ 
00143 
00144 // EOF - wxSegmentationFM3DWidget.h

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1