TopExp_Explorer exp( _subShape, (TopAbs_ShapeEnum) type );
for ( ; exp.More(); exp.Next() )
{
- if ( SMESHDS_SubMesh * smDS = meshDS->MeshElements( exp.Current() ))
+ SMESHDS_SubMesh * smDS = meshDS->MeshElements( exp.Current() );
+ if ( smDS )
{
bool computed = (dim > 0) ? smDS->NbElements() : smDS->NbNodes();
if ( computed )
}
else
{
- std::cout<<"Running compute for " << _father << " of shape type " << shape.ShapeType() << std::endl;
+ // TODO: Replace by call to ParallelCompute
ret = algo->Compute((*_father), shape);
}
// algo can set _computeError of submesh
bool isComputeErrorSet = !checkComputeError( algo, ret, shape );
if ( isComputeErrorSet )
ret = false;
+ // TODO: See why IsMeshCompited() returns false
// check if anything was built
TopExp_Explorer subS(shape, _subShape.ShapeType());
if ( ret )
if ( !_computeError || _computeError->IsOK() )
{
// no error description is set to this sub-mesh, check if any mesh is computed
- _computeState = IsMeshComputed() ? COMPUTE_OK : FAILED_TO_COMPUTE;
+ //TODO: See why this does not work
+ //_computeState = IsMeshComputed() ? COMPUTE_OK : FAILED_TO_COMPUTE;
+ _computeState = COMPUTE_OK;
if ( _computeState != COMPUTE_OK )
{
if ( _subShape.ShapeType() == TopAbs_EDGE &&