#include <map>
#include <fstream>
#include <cstdio>
-#include <stdlib.h>
+#include <cstdlib>
using namespace std;
using SMESH::TPythonDump;
// activate the CORBA servant of hypothesis
hypothesis_i = SMESH::SMESH_Hypothesis::_narrow( myHypothesis_i->_this() );
int nextId = RegisterObject( hypothesis_i );
- if(MYDEBUG) MESSAGE( "Add hypo to map with id = "<< nextId );
+ if(MYDEBUG) { MESSAGE( "Add hypo to map with id = "<< nextId ); }
+ else { nextId = 0; } // avoid "unused variable" warning in release mode
return hypothesis_i._retn();
}
// activate the CORBA servant of Mesh
SMESH::SMESH_Mesh_var mesh = SMESH::SMESH_Mesh::_narrow( meshServant->_this() );
int nextId = RegisterObject( mesh );
- if(MYDEBUG) MESSAGE( "Add mesh to map with id = "<< nextId);
+ if(MYDEBUG) { MESSAGE( "Add mesh to map with id = "<< nextId); }
+ else { nextId = 0; } // avoid "unused variable" warning in release mode
return mesh._retn();
}
catch (SALOME_Exception& S_ex) {
return error_array._retn();
}
-//
//================================================================================
/*!
* \brief Return mesh elements preventing computation of a subshape
return result._retn();
}
+//================================================================================
+/*!
+ * \brief Create a group of elements preventing computation of a sub-shape
+ */
+//================================================================================
+
+SMESH::ListOfGroups*
+SMESH_Gen_i::MakeGroupsOfBadInputElements( SMESH::SMESH_Mesh_ptr theMesh,
+ CORBA::Short theSubShapeID,
+ const char* theGroupName )
+ throw ( SALOME::SALOME_Exception )
+{
+ Unexpect aCatch(SALOME_SalomeException);
+
+ SMESH::ListOfGroups_var groups;
+
+ if ( CORBA::is_nil( theMesh ) )
+ THROW_SALOME_CORBA_EXCEPTION( "bad Mesh reference",SALOME::BAD_PARAM );
+
+ try {
+ if ( SMESH_Mesh_i* meshServant = SMESH::DownCast<SMESH_Mesh_i*>( theMesh ))
+ {
+ groups = meshServant->MakeGroupsOfBadInputElements( theSubShapeID, theGroupName );
+ TPythonDump() << groups << " = " << this
+ << ".MakeGroupsOfBadInputElements( "
+ << theMesh << ", " << theSubShapeID << ", '" << theGroupName << "' )";
+ }
+ }
+ catch ( SALOME_Exception& S_ex ) {
+ INFOS( "catch exception "<< S_ex.what() );
+ }
+ return groups._retn();
+}
+
//================================================================================
/*!
* \brief Returns errors of hypotheses definintion
::SMESH_Mesh& myLocMesh = meshServant->GetImpl();
TSetOfInt shapeIds;
::MeshDimension aDim = (MeshDimension)theDimension;
- if ( myGen.Compute( myLocMesh, myLocShape, false, aDim, &shapeIds ) )
+ if ( myGen.Compute( myLocMesh, myLocShape, false, false, aDim, &shapeIds ) )
{
int nbShapeId = shapeIds.size();
theShapesId.length( nbShapeId );