Move from StdMeshers_ProjectionUtils

+  static bool IsSubShape( const TopoDS_Shape& shape, const TopoDS_Shape& mainShape );
+
+  static bool IsSubShape( const TopoDS_Shape& shape, SMESH_Mesh* aMesh );
This commit is contained in:
eap 2010-03-23 14:32:26 +00:00
parent 3a82c6685b
commit 8951a46238
2 changed files with 41 additions and 0 deletions

View File

@ -1451,6 +1451,42 @@ TopAbs_Orientation SMESH_MesherHelper::GetSubShapeOri(const TopoDS_Shape& shape,
return ori;
}
//=======================================================================
//function : IsSubShape
//purpose :
//=======================================================================
bool SMESH_MesherHelper::IsSubShape( const TopoDS_Shape& shape,
const TopoDS_Shape& mainShape )
{
if ( !shape.IsNull() && !mainShape.IsNull() )
{
for ( TopExp_Explorer exp( mainShape, shape.ShapeType());
exp.More();
exp.Next() )
if ( shape.IsSame( exp.Current() ))
return true;
}
SCRUTE((shape.IsNull()));
SCRUTE((mainShape.IsNull()));
return false;
}
//=======================================================================
//function : IsSubShape
//purpose :
//=======================================================================
bool SMESH_MesherHelper::IsSubShape( const TopoDS_Shape& shape, SMESH_Mesh* aMesh )
{
if ( shape.IsNull() || !aMesh )
return false;
return
aMesh->GetMeshDS()->ShapeToIndex( shape ) ||
// PAL16202
shape.ShapeType() == TopAbs_COMPOUND && aMesh->GetMeshDS()->IsGroupOfSubShapes( shape );
}
//=======================================================================
//function : IsQuadraticMesh
//purpose : Check mesh without geometry for: if all elements on this shape are quadratic,

View File

@ -134,6 +134,11 @@ public:
static TopAbs_Orientation GetSubShapeOri(const TopoDS_Shape& shape,
const TopoDS_Shape& subShape);
static bool IsSubShape( const TopoDS_Shape& shape, const TopoDS_Shape& mainShape );
static bool IsSubShape( const TopoDS_Shape& shape, SMESH_Mesh* aMesh );
public:
// ---------- PUBLIC INSTANCE METHODS ----------