]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
ZFitAll leads to black screen of OCC viewer during rotation if gradient background...
authornds <nds@opencascade.com>
Thu, 29 Dec 2016 11:00:14 +0000 (14:00 +0300)
committerrnv <rnv@opencascade.com>
Fri, 30 Dec 2016 08:22:03 +0000 (11:22 +0300)
src/OCCViewer/OCCViewer_ViewPort3d.cxx
src/OCCViewer/OCCViewer_ViewPort3d.h
src/OCCViewer/OCCViewer_ViewWindow.cxx

index ee51e0b4e8af49ac216edf4e16373390b7c9d596..e42313e63ca0c8447004da69e05d5544cc7323c4 100755 (executable)
@@ -245,10 +245,13 @@ bool OCCViewer_ViewPort3d::syncronize( const OCCViewer_ViewPort3d* ref )
   /* update */
   tgtView->Update();
   tgtView->SetImmediateUpdate( Standard_True );
+#if OCC_VERSION_LARGE <= 0x07000000
   tgtView->ZFitAll();
+#endif
   return true;
 }
 
+#if OCC_VERSION_LARGE <= 0x07000000
 /*!
   Returns Z-size of this view. [ public ]
 */
@@ -270,6 +273,7 @@ void OCCViewer_ViewPort3d::setZSize( double zsize )
         if ( !myPerspView.IsNull() )
         myPerspView->SetZSize( zsize );*/
 }
+#endif
 
 /*!
   Get axial scale to the view
@@ -574,8 +578,8 @@ void OCCViewer_ViewPort3d::rotate( int x, int y,
 void OCCViewer_ViewPort3d::endRotation()
 {
   if ( !activeView().IsNull() ) {
+#if OCC_VERSION_LARGE <= 0x07000000
     activeView()->ZFitAll( 1.0 );
-#if OCC_VERSION_LARGE <= 0x06070100
     activeView()->SetZSize( 0.0 );
 #endif
     activeView()->Update();
@@ -651,12 +655,14 @@ void OCCViewer_ViewPort3d::fitAll( bool keepScale, bool withZ, bool upd )
   
 #if OCC_VERSION_LARGE > 0x06070100
   activeView()->FitAll( margin, upd );
+#if OCC_VERSION_LARGE <= 0x07000000
   if(withZ)
     activeView()->ZFitAll();
-#else 
+#endif  
+#else
   activeView()->FitAll( margin, withZ, upd );
-#endif
   activeView()->SetZSize(0.);
+#endif
   emit vpTransformed( this );
 }
 
@@ -770,7 +776,9 @@ bool OCCViewer_ViewPort3d::synchronize( OCCViewer_ViewPort* view )
     aView3d->SetViewMapping( aRefView3d->ViewMapping() );
     aView3d->SetViewOrientation( aRefView3d->ViewOrientation() );
 #endif
+#if OCC_VERSION_LARGE <= 0x07000000
     aView3d->ZFitAll();
+#endif
     aView3d->SetImmediateUpdate( Standard_True );
     aView3d->Update();
     blockSignals( blocked );
index f6f9f55f1680f4115433d8d639acb492c3de76b3..99428489804e23f294917cd1d090782ed98f5f5f 100755 (executable)
@@ -65,8 +65,10 @@ public:
 //   void         setActive( V3d_TypeOfView );
   virtual bool          syncronize( const OCCViewer_ViewPort3d* );
 
+#if OCC_VERSION_LARGE <= 0x07000000
   double                getZSize() const;
   void                  setZSize( double );
+#endif
 
   void                  getAxialScale( double&, double&, double& );
 
index 282daceb7307b6e168d801500c4a1a7b16d9689b..8959f5961f7aa48f83caaa1471571401571767f3 100644 (file)
@@ -406,7 +406,9 @@ bool OCCViewer_ViewWindow::eventFilter( QObject* watched, QEvent* e )
           int x1 = (int)( aEvent->x() + width()*delta/100 );
           int y1 = (int)( aEvent->y() + height()*delta/100 );
           myViewPort->zoom( x, y, x1, y1 );
+#if OCC_VERSION_LARGE <= 0x07000000
           myViewPort->getView()->ZFitAll();
+#endif
           emit vpTransformationFinished ( ZOOMVIEW );
         }
       }
@@ -1060,7 +1062,9 @@ void OCCViewer_ViewWindow::vpMouseReleaseEvent(QMouseEvent* theEvent)
 
   case PANVIEW:
   case ZOOMVIEW:
+#if OCC_VERSION_LARGE <= 0x07000000
     myViewPort->getView()->ZFitAll();
+#endif
     resetState();
     break;
 
@@ -3667,8 +3671,9 @@ void OCCViewer_ViewWindow::synchronize( SUIT_ViewWindow* theView )
 #endif
 
   getViewPort()->setAxialScale( anAxialScale[0], anAxialScale[1], anAxialScale[2] );
-
+#if OCC_VERSION_LARGE <= 0x07000000
   aDestView->ZFitAll();
+#endif
   aDestView->SetImmediateUpdate( Standard_True );
   aDestView->Redraw();