Qwt User's Guide  6.1-rc3
 All Classes Functions Variables Typedefs Enumerations Enumerator Pages
Public Types | Public Member Functions | List of all members
QwtInterval Class Reference

A class representing an interval. More...

#include <qwt_interval.h>

Public Types

enum  BorderFlag { IncludeBorders = 0x00, ExcludeMinimum = 0x01, ExcludeMaximum = 0x02, ExcludeBorders = ExcludeMinimum | ExcludeMaximum }
 
typedef QFlags< BorderFlagBorderFlags
 Border flags.
 

Public Member Functions

 QwtInterval ()
 Default Constructor. More...
 
 QwtInterval (double minValue, double maxValue, BorderFlags=IncludeBorders)
 
void setInterval (double minValue, double maxValue, BorderFlags=IncludeBorders)
 
QwtInterval normalized () const
 Normalize the limits of the interval. More...
 
QwtInterval inverted () const
 
QwtInterval limited (double minValue, double maxValue) const
 
bool operator== (const QwtInterval &) const
 Compare two intervals.
 
bool operator!= (const QwtInterval &) const
 Compare two intervals.
 
void setBorderFlags (BorderFlags)
 
BorderFlags borderFlags () const
 
double minValue () const
 
double maxValue () const
 
double width () const
 
void setMinValue (double)
 
void setMaxValue (double)
 
bool contains (double value) const
 
bool intersects (const QwtInterval &) const
 
QwtInterval intersect (const QwtInterval &) const
 Intersect 2 intervals.
 
QwtInterval unite (const QwtInterval &) const
 Unite 2 intervals.
 
QwtInterval operator| (const QwtInterval &) const
 
QwtInterval operator& (const QwtInterval &) const
 
QwtIntervaloperator|= (const QwtInterval &)
 Unites this interval with the given interval.
 
QwtIntervaloperator&= (const QwtInterval &)
 Intersects this interval with the given interval.
 
QwtInterval extend (double value) const
 
QwtInterval operator| (double) const
 
QwtIntervaloperator|= (double)
 
bool isValid () const
 
bool isNull () const
 
void invalidate ()
 
QwtInterval symmetrize (double value) const
 

Detailed Description

A class representing an interval.

The interval is represented by 2 doubles, the lower and the upper limit.

Member Enumeration Documentation

Flag indicating if a border is included or excluded

See Also
setBorderFlags(), borderFlags()
Enumerator
IncludeBorders 

Min/Max values are inside the interval.

ExcludeMinimum 

Min value is not included in the interval.

ExcludeMaximum 

Max value is not included in the interval.

ExcludeBorders 

Min/Max values are not included in the interval.

Constructor & Destructor Documentation

QwtInterval::QwtInterval ( )
inline

Default Constructor.

Creates an invalid interval [0.0, -1.0]

See Also
setInterval(), isValid()
QwtInterval::QwtInterval ( double  minValue,
double  maxValue,
BorderFlags  borderFlags = IncludeBorders 
)
inline

Constructor

Build an interval with from min/max values

Parameters
minValueMinimum value
maxValueMaximum value
borderFlagsInclude/Exclude borders

Member Function Documentation

QwtInterval::BorderFlags QwtInterval::borderFlags ( ) const
inline
Returns
Border flags
See Also
setBorderFlags()
bool QwtInterval::contains ( double  value) const

Test if a value is inside an interval

Parameters
valueValue
Returns
true, if value >= minValue() && value <= maxValue()
QwtInterval QwtInterval::extend ( double  value) const

Extend the interval

If value is below minValue(), value becomes the lower limit. If value is above maxValue(), value becomes the upper limit.

extend has no effect for invalid intervals

Parameters
valueValue
See Also
isValid()
bool QwtInterval::intersects ( const QwtInterval other) const

Test if two intervals overlap

void QwtInterval::invalidate ( )
inline

Invalidate the interval

The limits are set to interval [0.0, -1.0]

See Also
isValid()
QwtInterval QwtInterval::inverted ( ) const

Invert the limits of the interval

Returns
Inverted interval
See Also
normalized()
bool QwtInterval::isNull ( ) const
inline
Returns
true, if isValid() && (minValue() >= maxValue())
bool QwtInterval::isValid ( ) const
inline

A interval is valid when minValue() <= maxValue(). In case of QwtInterval::ExcludeBorders it is true when minValue() < maxValue()

QwtInterval QwtInterval::limited ( double  lowerBound,
double  upperBound 
) const

Limit the interval, keeping the border modes

Parameters
lowerBoundLower limit
upperBoundUpper limit
Returns
Limited interval
double QwtInterval::maxValue ( ) const
inline
Returns
Upper limit of the interval
double QwtInterval::minValue ( ) const
inline
Returns
Lower limit of the interval
QwtInterval QwtInterval::normalized ( ) const

Normalize the limits of the interval.

If maxValue() < minValue() the limits will be inverted.

Returns
Normalized interval
See Also
isValid(), inverted()
QwtInterval QwtInterval::operator& ( const QwtInterval interval) const
inline

Intersection of two intervals

See Also
intersect()
QwtInterval QwtInterval::operator| ( const QwtInterval interval) const
inline

Union of two intervals

See Also
unite()
QwtInterval QwtInterval::operator| ( double  value) const
inline

Extend an interval

Parameters
valueValue
Returns
Extended interval
See Also
extend()
QwtInterval & QwtInterval::operator|= ( double  value)

Extend an interval

Parameters
valueValue
Returns
Reference of the extended interval
See Also
extend()
void QwtInterval::setBorderFlags ( BorderFlags  borderFlags)
inline

Change the border flags

Parameters
borderFlagsOr'd BorderMode flags
See Also
borderFlags()
void QwtInterval::setInterval ( double  minValue,
double  maxValue,
BorderFlags  borderFlags = IncludeBorders 
)
inline

Assign the limits of the interval

Parameters
minValueMinimum value
maxValueMaximum value
borderFlagsInclude/Exclude borders
void QwtInterval::setMaxValue ( double  maxValue)
inline

Assign the upper limit of the interval

Parameters
maxValueMaximum value
void QwtInterval::setMinValue ( double  minValue)
inline

Assign the lower limit of the interval

Parameters
minValueMinimum value
QwtInterval QwtInterval::symmetrize ( double  value) const

Adjust the limit that is closer to value, so that value becomes the center of the interval.

Parameters
valueCenter
Returns
Interval with value as center
double QwtInterval::width ( ) const
inline

Return the width of an interval The width of invalid intervals is 0.0, otherwise the result is maxValue() - minValue().

See Also
isValid()