]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
extend API
authorptv <ptv@opencascade.com>
Thu, 13 Jul 2006 11:46:13 +0000 (11:46 +0000)
committerptv <ptv@opencascade.com>
Thu, 13 Jul 2006 11:46:13 +0000 (11:46 +0000)
src/Plot2d/Plot2d_Curve.cxx
src/Plot2d/Plot2d_Curve.h

index c0a9abbb6f2a1694e188bf2898b8c613bfd5de57..731f332d1c2a050210555aa01a21c0609f22c570 100755 (executable)
@@ -369,6 +369,21 @@ double Plot2d_Curve::getMinX() const
   return aMinX;
 }
 
+/*!
+  Gets curve's maxiaml abscissa
+*/
+double Plot2d_Curve::getMaxX() const
+{
+  QValueList<Plot2d_Point>::const_iterator aIt;
+  double aMaxX = -1e150;
+  int aCurrent = 0;
+  for(aIt = myPoints.begin(); aIt != myPoints.end(); ++aIt) {
+    if ( (*aIt).x > aMaxX )
+      aMaxX = (*aIt).x;
+  }
+  return aMaxX;
+}
+
 /*!
   Gets curve's minimal ordinate
 */
@@ -383,3 +398,18 @@ double Plot2d_Curve::getMinY() const
   }
   return aMinY;
 }
+
+/*!
+  Gets curve's maximal ordinate
+*/
+double Plot2d_Curve::getMaxY() const
+{
+  QValueList<Plot2d_Point>::const_iterator aIt;
+  double aMaxY = -1e150;
+  int aCurrent = 0;
+  for(aIt = myPoints.begin(); aIt != myPoints.end(); ++aIt) {
+    if ( (*aIt).y > aMaxY )
+      aMaxY = (*aIt).y;
+  }
+  return aMaxY;
+}
index b17f7c327364b8ae26296d4c1f53b09199bfc78e..ab2e53abcb575321479932acf7197216270b3299 100755 (executable)
@@ -87,6 +87,11 @@ public:
   // non-positive X/Y coordinate
   double      getMinX() const;
   double      getMinY() const;
+  // Protection against QwtCurve::drawLines() bug in Qwt 0.4.x:
+  // sometimes it crashes (FPE) if draws curve with big abciss or ordinate cooridates
+  // after curve with small values
+  double      getMaxX() const;
+  double      getMaxY() const;
 
 protected:
   bool        myAutoAssign;