task "Dump Python". Puslish submesh when assigning a local hypothesis

This commit is contained in:
eap 2005-03-25 13:05:29 +00:00
parent 3370f352f9
commit 3c2674a6d9

View File

@ -772,8 +772,20 @@ bool SMESH_Gen_i::AddHypothesisToShape(SALOMEDS::Study_ptr theStudy,
// Find a mesh or submesh refering to theShape // Find a mesh or submesh refering to theShape
SALOMEDS::SObject_var aMeshOrSubMesh = SALOMEDS::SObject_var aMeshOrSubMesh =
GetMeshOrSubmeshByShape( theStudy, theMesh, theShape ); GetMeshOrSubmeshByShape( theStudy, theMesh, theShape );
if ( aMeshOrSubMesh->_is_nil() )
{
// publish submesh
TopoDS_Shape aShape = GeomObjectToShape( theShape );
SMESH_Mesh_i* mesh_i = objectToServant<SMESH_Mesh_i>( theMesh );
if ( !aShape.IsNull() && mesh_i && mesh_i->GetImpl().GetMeshDS() ) {
SMESHDS_Mesh* meshDS = mesh_i->GetImpl().GetMeshDS();
int shapeID = meshDS->ShapeToIndex( aShape );
SMESH::SMESH_subMesh_var aSubMesh = mesh_i->getSubMesh(shapeID);
aMeshOrSubMesh = PublishSubMesh( theStudy, theMesh, aSubMesh, theShape );
}
if ( aMeshOrSubMesh->_is_nil() ) if ( aMeshOrSubMesh->_is_nil() )
return false; return false;
}
//Find or Create Applied Hypothesis root //Find or Create Applied Hypothesis root
bool aIsAlgo = !SMESH::SMESH_Algo::_narrow( theHyp )->_is_nil(); bool aIsAlgo = !SMESH::SMESH_Algo::_narrow( theHyp )->_is_nil();