]> git.mxchange.org Git - simgear.git/blobdiff - simgear/math/interpolater.cxx
Patch from Melchior Franz:
[simgear.git] / simgear / math / interpolater.cxx
index d3d743509d7611db4a9d8bbfb44042f9f31a0210..ccb71d6be5b783e5aea6e06750040e5e106ba306 100644 (file)
@@ -83,8 +83,9 @@ double SGInterpTable::interpolate(double x) const
     int i;
     double y;
 
-    if (size == 0.0)
+    if (size == 0.0) {
       return 0.0;
+    }
 
     i = 0;
 
@@ -96,14 +97,14 @@ double SGInterpTable::interpolate(double x) const
 
     // printf ("i = %d ", i);
 
-    if ( (i == 0) && (x < table[0].ind) ) {
+    if ( i <= 0 ) {
        SG_LOG( SG_MATH, SG_DEBUG, 
                "interpolate(): lookup error, x to small = " << x );
        return table[0].dep;
     }
 
     // cout << " table[size-1].ind = " << table[size-1].ind << endl;
-    if ( x > table[size-1].ind ) {
+    if ( i >= size ) {
        SG_LOG( SG_MATH, SG_DEBUG, 
                "interpolate(): lookup error, x to big = " << x );
        return table[size-1].dep;