X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_Distribution.cxx;h=815b708f63a0210b391b97be247f3d63e6c63f62;hp=1223fc009e716220152d1c577951231b3729f23d;hb=0ef2b313da77bf984725fb6ae9af82c73dbd077c;hpb=4ff5bd61540272713e48de1eee75625028c32155 diff --git a/src/StdMeshers/StdMeshers_Distribution.cxx b/src/StdMeshers/StdMeshers_Distribution.cxx index 1223fc009..815b708f6 100644 --- a/src/StdMeshers/StdMeshers_Distribution.cxx +++ b/src/StdMeshers/StdMeshers_Distribution.cxx @@ -17,7 +17,7 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -122,10 +122,11 @@ double FunctionTable::integral( const int i ) const double FunctionTable::integral( const int i, const double d ) const { - double f, res = 0.0; - if( value( myData[2*i]+d, f ) ) - res = ( myData[2*i+1] + f ) / 2.0 * d; - + double f1,f2, res = 0.0; + if( value( myData[2*i]+d, f1 ) ) + if(!value(myData[2*i], f2)) + f2 = myData[2*i+1]; + res = (f2+f1) * d / 2.0; return res; } @@ -144,7 +145,7 @@ double FunctionTable::integral( const double a, const double b ) const bool FunctionTable::findBounds( const double x, int& x_ind_1, int& x_ind_2 ) const { - int n = myData.size(); + int n = myData.size() / 2; if( n==0 || x( const_cast (this) ), a, b, 20 ); if( _int.IsDone() ) res = _int.Value(); }