Represents the range an axis is encompassing. More...
Public Functions  
QCPRange ()  
QCPRange (double lower, double upper)  
bool  operator== (const QCPRange &other) const 
bool  operator!= (const QCPRange &other) const 
QCPRange &  operator+= (const double &value) 
QCPRange &  operator= (const double &value) 
QCPRange &  operator*= (const double &value) 
QCPRange &  operator/= (const double &value) 
double  size () const 
double  center () const 
void  normalize () 
void  expand (const QCPRange &otherRange) 
void  expand (double includeCoord) 
QCPRange  expanded (const QCPRange &otherRange) const 
QCPRange  expanded (double includeCoord) const 
QCPRange  bounded (double lowerBound, double upperBound) const 
QCPRange  sanitizedForLogScale () const 
QCPRange  sanitizedForLinScale () const 
bool  contains (double value) const 
Public Members  
double  lower 
double  upper 
Static Public Functions  
static bool  validRange (double lower, double upper) 
static bool  validRange (const QCPRange &range) 
Static Public Members  
static const double  minRange = 1e280 
static const double  maxRange = 1e250 
Friends  
const QCPRange  operator+ (const QCPRange &, double) 
const QCPRange  operator+ (double, const QCPRange &) 
const QCPRange  operator (const QCPRange &range, double value) 
const QCPRange  operator* (const QCPRange &range, double value) 
const QCPRange  operator* (double value, const QCPRange &range) 
const QCPRange  operator/ (const QCPRange &range, double value) 
Related NonMembers  
(Note that these are not member functions.)  
QDebug  operator<< (QDebug d, const QCPRange &range) 
Represents the range an axis is encompassing.
contains a lower and upper double value and provides convenience input, output and modification functions.
QCPRange::QCPRange  (  ) 
Constructs a range with lower and upper set to zero.
QCPRange::QCPRange  (  double  lower, 
double  upper  
) 
This is an overloaded function.
Constructs a range with the specified lower and upper values.
The resulting range will be normalized (see normalize), so if lower is not numerically smaller than upper, they will be swapped.

inline 
Adds value to both boundaries of the range.

inline 
Subtracts value from both boundaries of the range.

inline 
Multiplies both boundaries of the range by value.

inline 
Divides both boundaries of the range by value.

inline 
Returns the size of the range, i.e. upperlower

inline 
Returns the center of the range, i.e. (upper+lower)*0.5

inline 
Makes sure lower is numerically smaller than upper. If this is not the case, the values are swapped.
void QCPRange::expand  (  const QCPRange &  otherRange  ) 
This is an overloaded function.
Expands this range such that otherRange is contained in the new range. It is assumed that both this range and otherRange are normalized (see normalize).
If this range contains NaN as lower or upper bound, it will be replaced by the respective bound of otherRange.
If otherRange is already inside the current range, this function does nothing.
void QCPRange::expand  (  double  includeCoord  ) 
This is an overloaded function.
Expands this range such that includeCoord is contained in the new range. It is assumed that this range is normalized (see normalize).
If this range contains NaN as lower or upper bound, the respective bound will be set to includeCoord.
If includeCoord is already inside the current range, this function does nothing.
QCPRange QCPRange::expanded  (  double  includeCoord  )  const 
QCPRange QCPRange::bounded  (  double  lowerBound, 
double  upperBound  
)  const 
Returns this range, possibly modified to not exceed the bounds provided as lowerBound and upperBound. If possible, the size of the current range is preserved in the process.
If the range shall only be bounded at the lower side, you can set upperBound to QCPRange::maxRange. If it shall only be bounded at the upper side, set lowerBound to QCPRange::maxRange.
QCPRange QCPRange::sanitizedForLogScale  (  )  const 
Returns a sanitized version of the range. Sanitized means for logarithmic scales, that the range won't span the positive and negative sign domain, i.e. contain zero. Further lower will always be numerically smaller (or equal) to upper.
If the original range does span positive and negative sign domains or contains zero, the returned range will try to approximate the original range as good as possible. If the positive interval of the original range is wider than the negative interval, the returned range will only contain the positive interval, with lower bound set to rangeFac or rangeFac *upper, whichever is closer to zero. Same procedure is used if the negative interval is wider than the positive interval, this time by changing the upper bound.
QCPRange QCPRange::sanitizedForLinScale  (  )  const 
Returns a sanitized version of the range. Sanitized means for linear scales, that lower will always be numerically smaller (or equal) to upper.

inline 
Returns true when value lies within or exactly on the borders of the range.

static 
Checks, whether the specified range is within valid bounds, which are defined as QCPRange::maxRange and QCPRange::minRange. A valid range means:

static 
This is an overloaded function. Checks, whether the specified range is within valid bounds, which are defined as QCPRange::maxRange and QCPRange::minRange. A valid range means:

static 
Minimum range size (upper  lower) the range changing functions will accept. Smaller intervals would cause errors due to the 11bit exponent of double precision numbers, corresponding to a minimum magnitude of roughly 1e308.

static 
Maximum values (negative and positive) the range will accept in rangechanging functions. Larger absolute values would cause errors due to the 11bit exponent of double precision numbers, corresponding to a maximum magnitude of roughly 1e308.
Adds value to both boundaries of the range.
Adds value to both boundaries of the range.
Subtracts value from both boundaries of the range.
Multiplies both boundaries of the range by value.
Multiplies both boundaries of the range by value.
Divides both boundaries of the range by value.

related 
Prints range in a human readable format to the qDebug output.