]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxVtk3DBaseView.cxx
#3331 creaMaracasVisu Bug New Normal - Select contour with 2 points, HelpViewerNV
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxVtk3DBaseView.cxx
index 9d92c225526295afd8d36d392e09c339d3e1f7df..334104671c35e4cb36e97ff588fc8a3098ea9d4b 100644 (file)
 #ifdef _DEBUG
 #define new DEBUG_NEW
 #endif
-wxVtk3DBaseView::wxVtk3DBaseView(wxWindow *parent)
+wxVtk3DBaseView::wxVtk3DBaseView(wxWindow *parent, vtkBaseData* vtkbasedata)
 :wxVtkBaseView( parent )
 {
+       SetVtkBaseData( vtkbasedata );
        _configure      = false;
        _aRenderer      = NULL;
        _renWin         = NULL;
@@ -42,11 +43,14 @@ wxVtk3DBaseView::wxVtk3DBaseView(wxWindow *parent)
 wxVtk3DBaseView::~wxVtk3DBaseView()
 {
 
-       if (_aCamera!=NULL)     { _aCamera              -> Delete(); _aCamera=NULL;}
+       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;
+       if (_renWin!=NULL)              
+       { 
+               if(_renWin->GetReferenceCount()==0)
+               {
+                       _renWin->Delete(); 
+                       _renWin=NULL;
                }
        }
 }
@@ -150,11 +154,31 @@ void wxVtk3DBaseView::Configure()
                //wxVtkBaseView::Configure();
                _aRenderer      = vtkRenderer::New();
                _renWin         = vtkRenderWindow::New();
+               
+               int supportopengl=_renWin->SupportsOpenGL();
+               printf("EED wxVtk3DBaseView::Configure >>>>> vtkRenderWindow SupportsOpenGL %d\n", supportopengl );
+               printf("EED wxVtk3DBaseView::Configure >>>>> vtkRenderWindow IsDirect       %d\n", _renWin->IsDirect() );
+               if (supportopengl==0)
+               {
+#if defined(_WIN32)
+                       printf("   OpenGL 3 not detected.\n    Try to install opengl drivers or use de opengl-mesa version.\n    Copy from <ProgramsFiles>\\CreaTools\\crea_TPdlls-4.0.0\\bin\\opengl-mesa\n    the file: opengl32.dll\n to    <ProgramsFiles>\\CreaTools\\CreaTools-3.0.0\\bin \n");
+#else
+                       printf("   OpenGL 3 not detected.\n    Try to install opengl drivers or use de opengl-mesa version.\n");
+#endif
+                       exit(0);
+               }
+               
                _renWin->AddRenderer(_aRenderer);
 
                _aRenderer->GradientBackgroundOn();
                _aRenderer->SetBackground( 0.33 , 0.33 , 0.33 );
                _aRenderer->SetBackground2( 0.66 , 0.66 , 0.66 );
+
+
+
+//             _aRenderer->GradientBackgroundOff();
+//             _aRenderer->SetBackground(0,0,0 );
+
                
                SetStereo(0);
                
@@ -192,10 +216,10 @@ void wxVtk3DBaseView::Configure()
                GetCamera()->Roll(180);
                GetCamera()->Yaw(180+30);
                GetCamera()->Pitch(-22);
-
-
+                               
        }
 }
+
 //-------------------------------------------------------------------
 //EED 27 sep 2006
 void wxVtk3DBaseView::GetSpacing(double spc[3])