disabled Ubuntu workaround code for Windows
authorAnatoly Baksheev <no@email>
Sat, 18 Jan 2014 22:16:59 +0000 (02:16 +0400)
committerAnatoly Baksheev <no@email>
Sun, 19 Jan 2014 14:39:00 +0000 (18:39 +0400)
modules/viz/src/vizimpl.cpp
modules/viz/test/tests_simple.cpp

index 64222b4..32c717c 100644 (file)
@@ -57,6 +57,7 @@ cv::viz::Viz3d::VizImpl::VizImpl(const String &name) : spin_once_state_(false),
     window_ = vtkSmartPointer<vtkRenderWindow>::New();
     cv::Vec2i window_size = cv::Vec2i(window_->GetScreenSize()) / 2;
     window_->SetSize(window_size.val);
+    window_->AddRenderer(renderer_);
 
     // Create the interactor style
     style_ = vtkSmartPointer<InteractorStyle>::New();
@@ -107,6 +108,7 @@ void cv::viz::Viz3d::VizImpl::close()
 
 void cv::viz::Viz3d::VizImpl::recreateRenderWindow()
 {
+#if !defined _MSC_VER
     //recreating is workaround for Ubuntu -- a crash in x-server
     Vec2i window_size(window_->GetSize());
     int fullscreen = window_->GetFullScreen();
@@ -118,12 +120,7 @@ void cv::viz::Viz3d::VizImpl::recreateRenderWindow()
     window_->SetSize(window_size.val);
     window_->SetFullScreen(fullscreen);
     window_->AddRenderer(renderer_);
-    window_->AlphaBitPlanesOff();
-    window_->PointSmoothingOff();
-    window_->LineSmoothingOff();
-    window_->PolygonSmoothingOff();
-    window_->SwapBuffersOn();
-    window_->SetStereoTypeToAnaglyph();
+#endif
 }
 
 
@@ -134,6 +131,12 @@ void cv::viz::Viz3d::VizImpl::spin()
     interactor_ = vtkSmartPointer<vtkRenderWindowInteractor>::New();
     interactor_->SetRenderWindow(window_);
     interactor_->SetInteractorStyle(style_);
+    window_->AlphaBitPlanesOff();
+    window_->PointSmoothingOff();
+    window_->LineSmoothingOff();
+    window_->PolygonSmoothingOff();
+    window_->SwapBuffersOn();
+    window_->SetStereoTypeToAnaglyph();
     window_->Render();
     window_->SetWindowName(window_name_.c_str());
     interactor_->Start();
@@ -152,6 +155,12 @@ void cv::viz::Viz3d::VizImpl::spinOnce(int time, bool force_redraw)
         interactor_->SetInteractorStyle(style_);
         interactor_->AddObserver(vtkCommand::TimerEvent, timer_callback_);
         interactor_->AddObserver(vtkCommand::ExitEvent, exit_callback_);
+        window_->AlphaBitPlanesOff();
+        window_->PointSmoothingOff();
+        window_->LineSmoothingOff();
+        window_->PolygonSmoothingOff();
+        window_->SwapBuffersOn();
+        window_->SetStereoTypeToAnaglyph();
         window_->Render();
         window_->SetWindowName(window_name_.c_str());
     }
index 46f0e59..aae468e 100644 (file)
@@ -316,6 +316,8 @@ TEST(Viz, show_overlay_image)
         viz.getWidget("img1").cast<WImageOverlay>().setImage(lena * pow(sin(i*10*CV_PI/180) * 0.5 + 0.5, 1.0));
         viz.spinOnce(1, true);
     }
+    viz.showWidget("text2d", WText("Overlay images (stopped)", Point(20, 20), 20, Color::green()));
+    viz.spin();
 }
 
 
@@ -356,6 +358,7 @@ TEST(Viz, show_image_3d)
         viz.getWidget("img0").cast<WImage3D>().setImage(lena * pow(sin(i++*7.5*CV_PI/180) * 0.5 + 0.5, 1.0));
         viz.spinOnce(1, true);
     }
+    viz.showWidget("text2d", WText("Images in 3D (stopped)", Point(20, 20), 20, Color::green()));
     viz.spin();
 }