Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
23514: EDF 16031 - SMESH freezes
[modules/smesh.git]
/
src
/
StdMeshers
/
StdMeshers_NumberOfSegments.cxx
diff --git
a/src/StdMeshers/StdMeshers_NumberOfSegments.cxx
b/src/StdMeshers/StdMeshers_NumberOfSegments.cxx
index 29e55e4a5e983d3a0b85012c72942149bbb5fcdd..98dac7e8439a66d993600907f5661b1005430dd6 100644
(file)
--- a/
src/StdMeshers/StdMeshers_NumberOfSegments.cxx
+++ b/
src/StdMeshers/StdMeshers_NumberOfSegments.cxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-201
5
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-201
6
CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@
-28,10
+28,11
@@
//
#include "StdMeshers_NumberOfSegments.hxx"
//
#include "StdMeshers_NumberOfSegments.hxx"
-#include "S
tdMeshers_Distribution
.hxx"
+#include "S
MESHDS_Mesh
.hxx"
#include "SMESHDS_SubMesh.hxx"
#include "SMESHDS_SubMesh.hxx"
-#include "SMESH_Mesh.hxx"
#include "SMESH_Comment.hxx"
#include "SMESH_Comment.hxx"
+#include "SMESH_Mesh.hxx"
+#include "StdMeshers_Distribution.hxx"
#include <ExprIntrp_GenExp.hxx>
#include <Expr_Array1OfNamedUnknown.hxx>
#include <ExprIntrp_GenExp.hxx>
#include <Expr_Array1OfNamedUnknown.hxx>
@@
-41,15
+42,8
@@
#include <TopExp.hxx>
#include <TopTools_IndexedMapOfShape.hxx>
#include <TopExp.hxx>
#include <TopTools_IndexedMapOfShape.hxx>
-#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100
-#define NO_CAS_CATCH
-#endif
-
#include <Standard_Failure.hxx>
#include <Standard_Failure.hxx>
-
-#ifdef NO_CAS_CATCH
#include <Standard_ErrorHandler.hxx>
#include <Standard_ErrorHandler.hxx>
-#endif
#include <Basics_Utils.hxx>
#include <Basics_Utils.hxx>
@@
-186,8
+180,9
@@
void StdMeshers_NumberOfSegments::SetScaleFactor(double scaleFactor)
if (_distrType != DT_Scale)
_distrType = DT_Scale;
if (_distrType != DT_Scale)
_distrType = DT_Scale;
- if ( fabs(scaleFactor - 1.0) < PRECISION )
- _distrType = DT_Regular;
+// commented by mpa for IPAL 52986
+// if ( fabs(scaleFactor - 1.0) < PRECISION )
+// _distrType = DT_Regular;
if ( fabs(_scaleFactor - scaleFactor) > PRECISION )
{
if ( fabs(_scaleFactor - scaleFactor) > PRECISION )
{
@@
-236,13
+231,10
@@
void StdMeshers_NumberOfSegments::SetTableFunction(const vector<double>& table)
if( _convMode==0 )
{
try {
if( _convMode==0 )
{
try {
-#ifdef NO_CAS_CATCH
OCC_CATCH_SIGNALS;
OCC_CATCH_SIGNALS;
-#endif
val = pow( 10.0, val );
}
catch(Standard_Failure) {
val = pow( 10.0, val );
}
catch(Standard_Failure) {
- Handle(Standard_Failure) aFail = Standard_Failure::Caught();
throw SALOME_Exception( LOCALIZED( "invalid value"));
return;
}
throw SALOME_Exception( LOCALIZED( "invalid value"));
return;
}
@@
-333,13
+325,10
@@
bool process( const TCollection_AsciiString& str, int convMode,
bool parsed_ok = true;
Handle( ExprIntrp_GenExp ) myExpr;
try {
bool parsed_ok = true;
Handle( ExprIntrp_GenExp ) myExpr;
try {
-#ifdef NO_CAS_CATCH
OCC_CATCH_SIGNALS;
OCC_CATCH_SIGNALS;
-#endif
myExpr = ExprIntrp_GenExp::Create();
myExpr->Process( str.ToCString() );
} catch(Standard_Failure) {
myExpr = ExprIntrp_GenExp::Create();
myExpr->Process( str.ToCString() );
} catch(Standard_Failure) {
- Handle(Standard_Failure) aFail = Standard_Failure::Caught();
parsed_ok = false;
}
parsed_ok = false;
}
@@
-547,7
+536,7
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
int a;
// read number of segments
int a;
// read number of segments
- isOK = (load >> a);
+ isOK =
static_cast<bool>
(load >> a);
if (isOK)
_numberOfSegments = a;
else
if (isOK)
_numberOfSegments = a;
else
@@
-560,7
+549,7
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
// (nb.segments, distr.type, some other params.),
// we wait here the ditribution type, which is integer
double scale_factor;
// (nb.segments, distr.type, some other params.),
// we wait here the ditribution type, which is integer
double scale_factor;
- isOK = (load >> scale_factor);
+ isOK =
static_cast<bool>
(load >> scale_factor);
a = (int)scale_factor;
// try to interprete ditribution type,
a = (int)scale_factor;
// try to interprete ditribution type,
@@
-581,7
+570,7
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
{
case DT_Scale:
{
{
case DT_Scale:
{
- isOK = (load >> b);
+ isOK =
static_cast<bool>
(load >> b);
if (isOK)
_scaleFactor = b;
else
if (isOK)
_scaleFactor = b;
else
@@
-595,13
+584,13
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
break;
case DT_TabFunc:
{
break;
case DT_TabFunc:
{
- isOK = (load >> a);
+ isOK =
static_cast<bool>
(load >> a);
if (isOK)
{
_table.resize(a, 0.);
for ( size_t i=0; i < _table.size(); i++ )
{
if (isOK)
{
_table.resize(a, 0.);
for ( size_t i=0; i < _table.size(); i++ )
{
- isOK = (load >> b);
+ isOK =
static_cast<bool>
(load >> b);
if (isOK)
_table[i] = b;
else
if (isOK)
_table[i] = b;
else
@@
-620,7
+609,7
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
case DT_ExprFunc:
{
string str;
case DT_ExprFunc:
{
string str;
- isOK = (load >> str);
+ isOK =
static_cast<bool>
(load >> str);
if (isOK)
_func = str;
else
if (isOK)
_func = str;
else
@@
-639,7
+628,7
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
if (_distrType == DT_TabFunc || _distrType == DT_ExprFunc)
{
if (_distrType == DT_TabFunc || _distrType == DT_ExprFunc)
{
- isOK = (load >> a);
+ isOK =
static_cast<bool>
(load >> a);
if (isOK)
_convMode = a;
else
if (isOK)
_convMode = a;
else
@@
-648,14
+637,14
@@
istream & StdMeshers_NumberOfSegments::LoadFrom(istream & load)
// load reversed edges IDs
int intVal;
// load reversed edges IDs
int intVal;
- isOK = (load >> intVal);
+ isOK =
static_cast<bool>
(load >> intVal);
if ( isOK && _distrType != DT_Regular && intVal > 0 ) {
_edgeIDs.reserve( intVal );
for ( size_t i = 0; i < _edgeIDs.capacity() && isOK; i++) {
if ( isOK && _distrType != DT_Regular && intVal > 0 ) {
_edgeIDs.reserve( intVal );
for ( size_t i = 0; i < _edgeIDs.capacity() && isOK; i++) {
- isOK = (load >> intVal);
+ isOK =
static_cast<bool>
(load >> intVal);
if ( isOK ) _edgeIDs.push_back( intVal );
}
if ( isOK ) _edgeIDs.push_back( intVal );
}
- isOK = (load >> _objEntry);
+ isOK =
static_cast<bool>
(load >> _objEntry);
}
return load;
}
return load;