diff --git a/src/SMESH/SMESH_Gen.cxx b/src/SMESH/SMESH_Gen.cxx index 9dd6d0d05..cbc49c40a 100644 --- a/src/SMESH/SMESH_Gen.cxx +++ b/src/SMESH/SMESH_Gen.cxx @@ -38,10 +38,7 @@ #include "OpUtil.hxx" #include "Utils_ExceptHandlers.hxx" -#include -#include -#include -#include +#include #include "memoire.h" @@ -222,6 +219,11 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh, } // add smToCompute to shDim2sm map aShapeDim = GetShapeDim( algoShape ); + if ( algoShape.ShapeType() == TopAbs_COMPOUND ) + { + TopoDS_Iterator it( algoShape ); + aShapeDim += GetShapeDim( it.Value() ); + } shDim2sm.insert( make_pair( aShapeDim, smToCompute )); } else