0022082: EDF 1891 SMESH: Performance issues in SMESH filters

In MapCells(SALOME_Actor*,const TColStd_IndexedMapOfInteger& theMap),
move the following code out of the loop on theMap

   UnShrink();
   if(theMapActor->IsShrunk()){
     SetShrinkFactor(theMapActor->GetShrinkFactor());
   }
   myMapIndex = theMap;
This commit is contained in:
eap 2013-01-29 15:14:57 +00:00
parent aed57dc296
commit 83b9e1e926

View File

@ -128,6 +128,7 @@ SMESH_SVTKActor
#if VTK_XVERSION > 50700
if (aCell->GetCellType() != VTK_POLYHEDRON)
#endif
{
if(aCell->GetCellType() == VTK_VERTEX ) {
my0DGrid->InsertNextCell(aCell->GetCellType(),aCell->GetPointIds());
} else if(aCell->GetCellType() == VTK_POLY_VERTEX ) {
@ -135,6 +136,7 @@ SMESH_SVTKActor
} else {
myUnstructuredGrid->InsertNextCell(aCell->GetCellType(),aCell->GetPointIds());
}
}
#if VTK_XVERSION > 50700
else
{
@ -146,6 +148,7 @@ SMESH_SVTKActor
}
#endif
}
}
UnShrink();
if(theMapActor->IsShrunk()){
@ -155,7 +158,6 @@ SMESH_SVTKActor
myMapIndex = theMapIndex;
}
}
void
SMESH_SVTKActor