X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Hypothesis_i.cxx;h=c556187fc7b5c918ddc3d36b6dd4f438bed0b426;hp=054778f22bd8f05379d0573a59bb7c1f8bdabcf3;hb=a87bde2a084268d40af501d4b8b5c9e8d48c8323;hpb=bb1e4b11d8f1c4b90fe7b2c9c59a65c1d30c37f4 diff --git a/src/SMESH_I/SMESH_Hypothesis_i.cxx b/src/SMESH_I/SMESH_Hypothesis_i.cxx index 054778f22..c556187fc 100644 --- a/src/SMESH_I/SMESH_Hypothesis_i.cxx +++ b/src/SMESH_I/SMESH_Hypothesis_i.cxx @@ -34,6 +34,8 @@ #include #include +#include + using namespace std; //============================================================================= @@ -326,3 +328,24 @@ void SMESH_Hypothesis_i::UpdateAsMeshesRestored() { // for hyps needing full data restored } + +//================================================================================ +/*! + * \brief Check if a shape includes sub-shapes of a given dimension + */ +//================================================================================ + +bool GenericHypothesisCreator_i::IsShapeOfDim( const TopoDS_Shape & S, + int dim ) +{ + TopAbs_ShapeEnum shapeType; + switch ( dim ) + { + case 0: shapeType = TopAbs_VERTEX; break; + case 1: shapeType = TopAbs_EDGE; break; + case 2: shapeType = TopAbs_FACE; break; + case 3: shapeType = TopAbs_SOLID; break; + default: return true; + } + return TopExp_Explorer( S, shapeType ).More(); +}