]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMPRWidget.h
- Comment out uselesss #define MAX (vtk-4.5 doesn't compile)
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMPRWidget.h
index b1f17cb67b28daa4bbc13968c6008fed0568e1a3..986270a61fbc031875b4ccf24c09f93c8ef80d2f 100644 (file)
@@ -3,8 +3,8 @@
   Program:   wxMaracas
   Module:    $RCSfile: wxMPRWidget.h,v $
   Language:  C++
-  Date:      $Date: 2008/10/31 16:47:51 $
-  Version:   $Revision: 1.2 $
+  Date:      $Date: 2009/05/04 15:06:42 $
+  Version:   $Revision: 1.9 $
 
   Copyright: (c) 2002, 2003
   License:
@@ -18,7 +18,7 @@
 #ifndef __WX__MPR__WIDGET__HXX__
 #define __WX__MPR__WIDGET__HXX__
 
-
+#include "marTypes.h"
 #include <vector>
 
 #include <vtkObjectBase.h>
@@ -46,7 +46,7 @@
 
 
 //#include "kernel/marInterface.h"
-#include "../manualContour.h"
+#include "manualContour.h"
 
 #include "wxMPRBaseData.h"
 #include "wxVtkBaseView.h"
@@ -325,7 +325,7 @@ private:
                                
 class vtkInteractorStyleMPRView;
        
-class MARACASVISULIB_EXPORTS wxVtkMPR2DView :  public wxVtk2DBaseView
+class creaMaracasVisu_EXPORT wxVtkMPR2DView :  public wxVtk2DBaseView
 {
 public:
        wxVtkMPR2DView( wxWindow *parent, int direction );
@@ -421,6 +421,7 @@ public:
        void            OnVisiblePlane(wxCommandEvent& event);
        void            OnEditColorTable(wxCommandEvent& event);
        virtual void Refresh();
+       void            UpdateControlPanel();
 
 private:
        wxVtkMPR3DView  *_wxvtkmpr3Dview;
@@ -526,11 +527,11 @@ private:
 //------------------------------------------------------------------
 //------------------------------------------------------------------
 
-class wxVtkMPR3DView
+class creaMaracasVisu_EXPORT wxVtkMPR3DView
 {
 public:
        wxVtkMPR3DView( wxVtk3DBaseView *wxvtk3Dbaseview );
-       ~wxVtkMPR3DView();
+       virtual ~wxVtkMPR3DView();      
        void                            VisibleImageActor(int idPosition, bool visible);
        void                            VisiblePointWidget( bool visible );
        void                            VisiblePlaneWidget( bool visible );
@@ -544,7 +545,7 @@ public:
        wxPanel*                        CreateControlPanel(wxWindow *parent);
 
        vtkMPR3DDataViewer* GetVtkMPR3DDataViewer();
-       wxVtk3DBaseView*        GetWxvtk3Dbaseview();
+       wxVtk3DBaseView*        GetWxvtk3Dbaseview() throw (char*);
 
        void                            InitOrientationPointWidget(); 
 
@@ -552,6 +553,8 @@ public:
        void                            TestLoic1();
        void                            TestLoic2();
 
+       void RemoveActor(vtkActor* actor);
+       void ResetCamera(int *ext=NULL, double* origin=NULL,double* spc=NULL);
 
 private:
        wxVtk3DBaseView                                 *_wxvtk3Dbaseview;
@@ -566,6 +569,10 @@ private:
        // Point Widget (3D)
        vtkPointWidget                                  *_pointWidget;
        vtkmyPWCallback_3DPointWidget   *_myCallback;
+       vtkProbeFilter *_probe;
+       vtkPolyDataMapper *_contourMapper;
+
+       
 
 protected:
 };
@@ -581,7 +588,7 @@ class wxVtkClipping3DView
 {
 public:
        wxVtkClipping3DView( wxVtk3DBaseView* wxvtk3Dbaseview );
-       ~wxVtkClipping3DView();
+       virtual ~wxVtkClipping3DView();
        virtual void                            Refresh();
        virtual void                            Configure();
        void                                            SetVtkClipping3DDataViewer( vtkClipping3DDataViewer *vtkclipping3Ddataviewer );
@@ -594,7 +601,7 @@ public:
        void                                            SetVisibleBoxVolume(bool visible);
        void                                            SetRepSurfaceWireFrame(int idTissue , bool typeRepresentation );
 
-       wxVtk3DBaseView*                        GetWxvtk3Dbaseview();
+       wxVtk3DBaseView*                        GetWxvtk3Dbaseview()throw(char*);
 
 private:
        wxVtk3DBaseView                                 *_wxvtk3Dbaseview;
@@ -815,6 +822,7 @@ private:
        vtkImageData                                    *_histogrammeVector;
        vtkXYPlotActor                                  *_xyplot;
        wxVtkBaseView                                   *_wxvtkbaseView;
+       vtkRenderer                                             *_renplotter;
 
        void    CreateModel();
        void    CreateInterface();
@@ -939,10 +947,10 @@ private:
 
 
 
-class wxMPRWidget : public wxPanel
+class creaMaracasVisu_EXPORT wxMPRWidget : public wxPanel
 {
 public:
-    wxMPRWidget(wxWindow* parent,marImageData *marimageData,double voxelSize);
+    wxMPRWidget(wxWindow* parent,marImageData *marimageData = NULL,double voxelSize = -1);
        ~wxMPRWidget( );
        void ConfigureVTK();
 
@@ -965,6 +973,8 @@ public:
        //returns the 2d view of the specific direction (0|1|2)
        wxVtkMPR2DView *GetWxvtkMPR2Dview(int direction);
 
+       void setImageData(vtkImageData * img, double voxelsize);
+
 private:
        double                                  _voxelSize;
        marImageData                    *_marImageData; 
@@ -1009,7 +1019,7 @@ private:
 };
 
 
-class wxMPRWidget2 : public wxMPRWidget
+class creaMaracasVisu_EXPORT wxMPRWidget2 : public wxMPRWidget
 {
 public:
        wxMPRWidget2(wxWindow* parent,marImageData *marimagedata,double voxelSize);