]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracas_ViewerWidget.cxx
#3012 creaMaracasVisu Bug New Normal - Update Image in ViewerNV
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracas_ViewerWidget.cxx
index f5cce0037add3250864e9860351358df39c2f692..9fee22620db3f2a3efdbf636276225a123a8e24b 100644 (file)
@@ -72,9 +72,9 @@
 
                if (vtkmprbasedata==NULL)
                {
-                       minternalVtkmprbasedata         = true;
-                       mvtkmprbasedata                 = new vtkMPRBaseData();
-                       marImageData    *marimagedata   = new marImageData( imagedata );
+                       minternalVtkmprbasedata         = true;
+                       mvtkmprbasedata                 = new vtkMPRBaseData();
+                       marImageData *marimagedata      = new marImageData( imagedata );
                        mvtkmprbasedata->SetMarImageData(marimagedata);
                } else {
                        minternalVtkmprbasedata         = false;
                        wxwindow        = mwidgetMesure;
                }else if (type==4)
                {
-                       mwxsphereview   = new wxSphereView( panel , mvtkmprbasedata, mvtkmprbasedata->GetImageData() );
+//EED
+//                     mwxsphereview   = new wxSphereView( panel , mvtkmprbasedata , mvtkmprbasedata->GetImageData() );
+                       mwxsphereview   = new wxSphereView( panel , mvtkmprbasedata );
                        wxwindow=mwxsphereview->GetWxVTKRenderWindowInteractor();
                }else if (type==5)
                {
                        panelClipping3D = new wxSplitterWindow( panel , -1);
-                       mwxvtk3Dbaseview_Clipping3D             = new wxVtk3DBaseView( panelClipping3D , vtkmprbasedata);
-
-                       mwxvtkclipping3Dview                                    = new wxVtkClipping3DView(mwxvtk3Dbaseview_Clipping3D);
-                       vtkClipping3DDataViewer *vtkclipping3Ddataviewer = new vtkClipping3DDataViewer();
+                       mwxvtk3Dbaseview_Clipping3D                                             = new wxVtk3DBaseView( panelClipping3D , vtkmprbasedata);
+                       mwxvtkclipping3Dview                                                    = new wxVtkClipping3DView(mwxvtk3Dbaseview_Clipping3D);
+                       vtkClipping3DDataViewer *vtkclipping3Ddataviewer= new vtkClipping3DDataViewer();
                        vtkclipping3Ddataviewer->SetVtkMPRBaseData(mvtkmprbasedata);                    
                        vtkclipping3Ddataviewer->Configure();
                        mwxvtkclipping3Dview->SetVtkClipping3DDataViewer(vtkclipping3Ddataviewer);
 
-                       mwxvtkmpr3Dview                         = new wxVtkMPR3DView( mwxvtk3Dbaseview_Clipping3D );
+                       mwxvtkmpr3Dview                                                 = new wxVtkMPR3DView( mwxvtk3Dbaseview_Clipping3D );
                        vtkMPR3DDataViewer *vtkmpr3Ddataviewer  = new vtkMPR3DDataViewer();
                        vtkmpr3Ddataviewer->SetVtkMPRBaseData(mvtkmprbasedata);
                        vtkmpr3Ddataviewer->Configure();
                        window3D = mwxvtk3Dbaseview_Clipping3D->GetWxVTKRenderWindowInteractor();
 
 //--
-                       wxNotebook *notebook = new wxNotebook(panelClipping3D, -1);
+                       wxNotebook *notebook            = new wxNotebook(panelClipping3D, -1);
 
                        // First tab
-                       controlPanelMPR3D               = mwxvtkmpr3Dview->CreateControlPanel(notebook, true);
+                       controlPanelMPR3D                       = mwxvtkmpr3Dview->CreateControlPanel(notebook, true);
                        notebook->AddPage(controlPanelMPR3D, _T("Planes") );
 
                        // Second Tab
 
                } else if (type==6)             {
                        panelClipping3D                                 = new wxSplitterWindow( panel , -1);
-                       mwxvtk3Dbaseview_Clipping3D     = new wxVtk3DBaseView( panelClipping3D , vtkmprbasedata);
+                       mwxvtk3Dbaseview_Clipping3D             = new wxVtk3DBaseView( panelClipping3D , vtkmprbasedata);
                        mwxvtkmpr3Dview                                 = new wxVtkMPR3DView( mwxvtk3Dbaseview_Clipping3D );
                        vtkmpr3Ddataviewer                              = new vtkMPR3DDataViewer();
                        wxWindow *window3D                              = mwxvtk3Dbaseview_Clipping3D->GetWxVTKRenderWindowInteractor();
                        wxPanel *panelControl                   = new wxPanel(panelClipping3D,-1);
-                       wxPanel *controlPanelMPR3D      = mwxvtkmpr3Dview->CreateControlPanel(panelControl, true);
-                       wxFlexGridSizer  *sizerCtrol  = new wxFlexGridSizer(1);
+                       wxPanel *controlPanelMPR3D              = mwxvtkmpr3Dview->CreateControlPanel(panelControl, true);
+                       wxFlexGridSizer  *sizerCtrol    = new wxFlexGridSizer(1);
                        sizerCtrol->Add(controlPanelMPR3D, 1, wxALL|wxEXPAND, 2);
 
                        panelControl->SetAutoLayout(true);
@@ -365,7 +366,7 @@ void wxMaracas_ViewerWidget::Refresh(bool eraseBackground ,const wxRect* rect  )
                if (mvtkmpr2Dview_Y                             !=NULL ){ mvtkmpr2Dview_Y->Refresh();                           }
                if (mvtkmpr2Dview_Z                             !=NULL ){ mvtkmpr2Dview_Z->Refresh();                           }
                if (mvtkplane2Dview                             !=NULL ){ mvtkplane2Dview->Refresh();                           }
-               if (mwxsphereview                               !=NULL ){ mwxsphereview ->Refresh();                            }
+               if (mwxsphereview                               !=NULL ){ mwxsphereview ->RefreshView();                        }
                if (mwxvtkmpr3Dview                             !=NULL ){ mwxvtkmpr3Dview->RefreshView();                       }
                if (mwxvtkclipping3Dview                !=NULL ){ mwxvtkclipping3Dview->Refresh();                      }
                if (mwxvtk3Dbaseview_Clipping3D !=NULL ){ mwxvtk3Dbaseview_Clipping3D->Refresh();       }
@@ -400,6 +401,9 @@ void wxMaracas_ViewerWidget::Refresh(bool eraseBackground ,const wxRect* rect  )
                return wxvtkbaseview   ;
        }
 
+
+
+//-------------------------------------------------------------------------
        void wxMaracas_ViewerWidget::SetImage( vtkImageData *image )
        {
                if(mvtkmprbasedata !=NULL)
@@ -408,40 +412,51 @@ void wxMaracas_ViewerWidget::Refresh(bool eraseBackground ,const wxRect* rect  )
                        mar->removeImageData(0);
                        mar->AddImageData(image);
                }
-
                
                if (mvtk2Dbaseview!=NULL)
                {
                        mvtk2Dbaseview->SetImageToVtkViewer(image);
                }
                
-               if (mvtkmpr2Dview_X!=NULL){
+               if (mvtkmpr2Dview_X!=NULL)
+               {
                        mvtkmpr2Dview_X->SetImageToVtkViewer(image);
                }
-               if (mvtkmpr2Dview_Y!=NULL){
+               if (mvtkmpr2Dview_Y!=NULL)
+               {
                        mvtkmpr2Dview_Y->SetImageToVtkViewer(image);
                }
-               if (mvtkmpr2Dview_Z!=NULL){
+               if (mvtkmpr2Dview_Z!=NULL)
+               {
                        mvtkmpr2Dview_Z->SetImageToVtkViewer(image);
                }
                
-               if (mvtkplane2Dview!=NULL){
+               if (mvtkplane2Dview!=NULL)
+               {
                        // ???  EED 10 oct 2012
                }
-               if (mwxsphereview!=NULL){
-                       // ???  EED 10 oct 2012
+               if (mwxsphereview!=NULL)
+               {
+                       mwxsphereview->SetImage();
                }
-               if (mwxvtk3Dbaseview_Clipping3D!=NULL){
-                       // ???  EED 10 oct 2012
+               if (mwxvtkclipping3Dview!=NULL)
+               {
+                       mwxvtkclipping3Dview->GetVtkClipping3DDataViewer()->SetImage();
                }
                
-               
+               if (mwxvtkmpr3Dview!=NULL)
+               {
+                       mwxvtkmpr3Dview->SetImage();
+               }
                
 //EED 26/11/2009
 //             ConfigureVTK();
 //             RefreshView();
+
        }
 
+       //-------------------------------------------------------------------------
+
        double wxMaracas_ViewerWidget :: GetX()
        {
                double value = -1;
@@ -452,6 +467,8 @@ void wxMaracas_ViewerWidget::Refresh(bool eraseBackground ,const wxRect* rect  )
                return value;
        }
 
+       //-------------------------------------------------------------------------
+
        double wxMaracas_ViewerWidget::GetY()
        {
                double value = -1;
@@ -462,6 +479,8 @@ void wxMaracas_ViewerWidget::Refresh(bool eraseBackground ,const wxRect* rect  )
                return value;
        }
 
+       //-------------------------------------------------------------------------
+
        double wxMaracas_ViewerWidget::GetZ()
        {
                double value = -1;