1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-04 18:06:22 +03:00

0027538: Visualization, AIS_InteractiveContext::Display() - do not erase previous display mode.

AIS_InteractiveContext::Display() does not erases old presentation modes of interactive object anymore giving us performance benefit AIS_InteractiveContext::Display() is used. Instead, the method marks them hidden in the same way as AIS_InteractiveContext::SetDisplayMode() and ::UnsetDisplayMode().
This commit is contained in:
mgn 2016-05-24 17:43:32 +03:00 committed by bugmaster
parent 7d46a9ed8b
commit f2b6318110

View File

@ -449,7 +449,7 @@ void AIS_InteractiveContext::Display (const Handle(AIS_InteractiveObject)& theIO
return;
}
// Erase presentations for all display modes different from aDispMode.
// Mark the presentation modes hidden of interactive object different from aDispMode.
// Then make sure aDispMode is displayed and maybe highlighted.
// Finally, activate selection mode <SelMode> if not yet activated.
TColStd_ListOfInteger aModesToRemove;
@ -463,7 +463,7 @@ void AIS_InteractiveContext::Display (const Handle(AIS_InteractiveObject)& theIO
{
myMainPM->Unhighlight (theIObj, anOldMode);
}
myMainPM->Erase (theIObj, anOldMode);
myMainPM->SetVisibility (theIObj, anOldMode, Standard_False);
}
}