]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk3DBaseView.cxx
Fix wxString vs std::string
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxVtk3DBaseView.cxx
index ffb634b00944cfca2d1c7e567b5e6e2321b70b25..1f2ee8024dd4e8d0b45ae5cbca3f3bd836fea8dd 100644 (file)
@@ -14,9 +14,14 @@ wxVtk3DBaseView::wxVtk3DBaseView(wxWindow *parent)
 //-------------------------------------------------------------------
 wxVtk3DBaseView::~wxVtk3DBaseView()
 {
-       if (_aCamera!=NULL)             { _aCamera              -> Delete(); }
-       if (_aRenderer!=NULL)   { _aRenderer    -> Delete(); }
-       if (_renWin!=NULL)              { _renWin               -> Delete(); }
+
+       if (_aCamera!=NULL)     { _aCamera              -> Delete(); _aCamera=NULL;}
+       if (_aRenderer!=NULL)   { _aRenderer    -> Delete(); _aRenderer=NULL;}
+       if (_renWin!=NULL)      { 
+               if(_renWin->GetReferenceCount()==0){
+                       _renWin         -> Delete(); _renWin=NULL;
+               }
+       }
 }
 //-------------------------------------------------------------------
 vtkCamera* wxVtk3DBaseView::GetCamera()
@@ -43,15 +48,21 @@ void wxVtk3DBaseView::Refresh()
 //-------------------------------------------------------------------
 void wxVtk3DBaseView::Configure()
 {
+       //printf("EED wxVtk3DBaseView::Configure A\n");
        if (_configure==false)
        {
+       //printf("EED wxVtk3DBaseView::Configure B\n");
                _configure=true;
                //wxVtkBaseView::Configure();
                _aRenderer      = vtkRenderer::New();
                _renWin         = vtkRenderWindow::New();
                _renWin->AddRenderer(_aRenderer);
 
-
+               _aRenderer->GradientBackgroundOn();
+               _aRenderer->SetBackground( 0.33 , 0.33 , 0.33 );
+               _aRenderer->SetBackground2( 0.66 , 0.66 , 0.66 );
+               
+               
 //       _renWin->SetStereoCapableWindow(1);
 // //      //renderwindow->SetStereoTypeToCrystalEyes();  
 //       _renWin->SetStereoTypeToRedBlue();
@@ -59,9 +70,6 @@ void wxVtk3DBaseView::Configure()
 
                GetWxVTKRenderWindowInteractor()->SetRenderWindow(_renWin);
 
-
-// EED Borrame
-//             vtkInteractorStyle3DMaracas *interactorStyle3DMaracas = vtkInteractorStyle3DMaracas::New(); 
                vtkInteractorStyleBaseView3D *interactorStyleBaseView3D = vtkInteractorStyleBaseView3D::New(); 
 
                SetInteractorStyleBaseView( interactorStyleBaseView3D );
@@ -69,12 +77,6 @@ void wxVtk3DBaseView::Configure()
                GetWxVTKRenderWindowInteractor()->SetInteractorStyle( interactorStyleBaseView3D );
                interactorStyleBaseView3D->SetwxVtkBaseView(this);      
 
-
-/* EED Borrame
-  vtkInteractorStyleSwitch *iss = dynamic_cast<vtkInteractorStyleSwitch*>(_iren->GetInteractorStyle());
-  iss->SetCurrentStyleToTrackballCamera();
-*/
-
                // It is convenient to create an initial view of the data. The
                // FocalPoint and Position form a vector direction. Later on
                // (ResetCamera() method) this vector is used to position the camera
@@ -101,4 +103,5 @@ void wxVtk3DBaseView::GetSpacing(double spc[3])
        spc[0]=1;
        spc[1]=1;
        spc[2]=1;
-}
\ No newline at end of file
+}
+