diff --git a/dox/dev_guides/upgrade/upgrade.md b/dox/dev_guides/upgrade/upgrade.md index 7adfb09851..fab6087459 100644 --- a/dox/dev_guides/upgrade/upgrade.md +++ b/dox/dev_guides/upgrade/upgrade.md @@ -1207,6 +1207,10 @@ In addition, the API for immediate viewer update has been removed from V3d_View The argument theUpdateMode has been removed from methods Graphic3d_CView::Display(), Erase(), Update(). Method Graphic3d_CView::Update() does not redraw the view and does not re-compute structures anymore. +The following Grid management methods within class V3d_Viewer do not implicitly redraw the viewer: + ActivateGrid, DeactivateGrid, SetRectangularGridValues, SetCircularGridValues, + RectangularGridGraphicValues, CircularGridGraphicValues, SetPrivilegedPlane, DisplayPrivilegedPlane. + @subsection upgrade_720_Result_Of_BOP_On_Containers Result of Boolean operations on containers * The result of Boolean operations on arguments of collection types (WIRE/SHELL/COMPSOLID) is now filtered from duplicating containers. diff --git a/src/V3d/V3d_Viewer_3.cxx b/src/V3d/V3d_Viewer_3.cxx index f131be6fd8..924a404b3a 100644 --- a/src/V3d/V3d_Viewer_3.cxx +++ b/src/V3d/V3d_Viewer_3.cxx @@ -63,8 +63,6 @@ void V3d_Viewer::SetPrivilegedPlane(const gp_Ax3& aPlane) if(myDisplayPlane) DisplayPrivilegedPlane(Standard_True,myDisplayPlaneLength); - else - Update(); } /*----------------------------------------------------------------------*/ @@ -77,7 +75,6 @@ gp_Ax3 V3d_Viewer::PrivilegedPlane() const /*----------------------------------------------------------------------*/ void V3d_Viewer::DisplayPrivilegedPlane(const Standard_Boolean OnOff, const Quantity_Length aSize) { - Standard_Boolean Change = (myDisplayPlane != OnOff); myDisplayPlane = OnOff; myDisplayPlaneLength = aSize; @@ -128,7 +125,6 @@ void V3d_Viewer::DisplayPrivilegedPlane(const Standard_Boolean OnOff, const Quan { if( !myPlaneStructure.IsNull() ) myPlaneStructure->Erase(); } - if(Change) Update(); } /*----------------------------------------------------------------------*/ diff --git a/src/V3d/V3d_Viewer_4.cxx b/src/V3d/V3d_Viewer_4.cxx index ab437f4d52..9fbafa2dee 100644 --- a/src/V3d/V3d_Viewer_4.cxx +++ b/src/V3d/V3d_Viewer_4.cxx @@ -80,7 +80,6 @@ void V3d_Viewer::ActivateGrid (const Aspect_GridType theType, { anActiveViewIter.Value()->SetGrid (myPrivilegedPlane, Grid()); } - Update(); } // ======================================================================= @@ -101,7 +100,6 @@ void V3d_Viewer::DeactivateGrid() myGridEchoStructure->Erase(); } } - Update(); } // ======================================================================= @@ -145,7 +143,6 @@ void V3d_Viewer::SetRectangularGridValues (const Quantity_Length theXOrigin, { anActiveViewIter.Value()->SetGrid (myPrivilegedPlane, myRGrid); } - Update(); } // ======================================================================= @@ -181,7 +178,6 @@ void V3d_Viewer::SetCircularGridValues (const Quantity_Length theXOrigin, { anActiveViewIter.Value()->SetGrid (myPrivilegedPlane, myCGrid); } - Update(); } // ======================================================================= @@ -204,7 +200,6 @@ void V3d_Viewer::SetRectangularGridGraphicValues (const Quantity_Length theXSize const Quantity_Length theOffSet) { myRGrid->SetGraphicValues (theXSize, theYSize, theOffSet); - Update(); } // ======================================================================= @@ -225,7 +220,6 @@ void V3d_Viewer::SetCircularGridGraphicValues (const Quantity_Length theRadius, const Quantity_Length theOffSet) { myCGrid->SetGraphicValues (theRadius, theOffSet); - Update(); } // ======================================================================= diff --git a/src/ViewerTest/ViewerTest_ViewerCommands.cxx b/src/ViewerTest/ViewerTest_ViewerCommands.cxx index eeca0be075..8fe8a79503 100644 --- a/src/ViewerTest/ViewerTest_ViewerCommands.cxx +++ b/src/ViewerTest/ViewerTest_ViewerCommands.cxx @@ -4951,12 +4951,16 @@ static int VGrid (Draw_Interpretor& /*theDI*/, Aspect_GridType aType = aViewer->GridType(); Aspect_GridDrawMode aMode = aViewer->GridDrawMode(); - + ViewerTest_AutoUpdater anUpdateTool (ViewerTest::GetAISContext(), aView); Standard_Integer anIter = 1; for (; anIter < theArgNb; ++anIter) { const char* aValue = theArgVec[anIter]; - if (*aValue == 'r') + if (anUpdateTool.parseRedrawMode (aValue)) + { + continue; + } + else if (*aValue == 'r') { aType = Aspect_GT_Rectangular; }