Qwt User's Guide  6.1.6
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 lowerBound, double upperBound) const
 
bool operator== (const QwtInterval &) const
 Compare two intervals. More...
 
bool operator!= (const QwtInterval &) const
 Compare two intervals. More...
 
void setBorderFlags (BorderFlags)
 
BorderFlags borderFlags () const
 
double minValue () const
 
double maxValue () const
 
double width () const
 Return the width of an interval. More...
 
void setMinValue (double)
 
void setMaxValue (double)
 
bool contains (double value) const
 
bool intersects (const QwtInterval &) const
 Test if two intervals overlap. More...
 
QwtInterval intersect (const QwtInterval &) const
 Intersect 2 intervals. More...
 
QwtInterval unite (const QwtInterval &) const
 Unite 2 intervals.
 
QwtInterval operator| (const QwtInterval &) const
 
QwtInterval operator& (const QwtInterval &) const
 Intersection of two intervals. More...
 
QwtIntervaloperator|= (const QwtInterval &)
 Unite this interval with the given interval. More...
 
QwtIntervaloperator&= (const QwtInterval &)
 Intersect this interval with the given interval. More...
 
QwtInterval extend (double value) const
 Extend the interval. More...
 
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

◆ BorderFlag

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() [1/2]

QwtInterval::QwtInterval ( )
inline

Default Constructor.

Creates an invalid interval [0.0, -1.0]

See also
setInterval(), isValid()

◆ QwtInterval() [2/2]

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

◆ borderFlags()

QwtInterval::BorderFlags QwtInterval::borderFlags ( ) const
inline
Returns
Border flags
See also
setBorderFlags()

◆ contains()

bool QwtInterval::contains ( double  value) const

Test if a value is inside an interval

Parameters
valueValue
Returns
true, if value >= minValue() && value <= maxValue()

◆ extend()

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
Returns
extended interval
See also
isValid()

◆ intersect()

QwtInterval QwtInterval::intersect ( const QwtInterval other) const

Intersect 2 intervals.

Parameters
otherInterval to be intersect with
Returns
Intersection

◆ intersects()

bool QwtInterval::intersects ( const QwtInterval other) const

Test if two intervals overlap.

Parameters
otherInterval
Returns
True, when the intervals are intersecting

◆ invalidate()

void QwtInterval::invalidate ( )
inline

Invalidate the interval

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

See also
isValid()

◆ inverted()

QwtInterval QwtInterval::inverted ( ) const

Invert the limits of the interval

Returns
Inverted interval
See also
normalized()

◆ isNull()

bool QwtInterval::isNull ( ) const
inline
Returns
true, if isValid() && (minValue() >= maxValue())

◆ isValid()

bool QwtInterval::isValid ( ) const
inline

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

Returns
True, when the interval is valid

◆ limited()

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

Limit the interval, keeping the border modes

Parameters
lowerBoundLower limit
upperBoundUpper limit
Returns
Limited interval

◆ maxValue()

double QwtInterval::maxValue ( ) const
inline
Returns
Upper limit of the interval

◆ minValue()

double QwtInterval::minValue ( ) const
inline
Returns
Lower limit of the interval

◆ normalized()

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()

◆ operator!=()

bool QwtInterval::operator!= ( const QwtInterval other) const
inline

Compare two intervals.

Parameters
otherInterval to compare with
Returns
True, when this and other are not equal

◆ operator&()

QwtInterval QwtInterval::operator& ( const QwtInterval other) const
inline

Intersection of two intervals.

Parameters
otherInterval to intersect with
Returns
Intersection of this and other
See also
intersect()

◆ operator&=()

QwtInterval & QwtInterval::operator&= ( const QwtInterval other)

Intersect this interval with the given interval.

Parameters
otherInterval to be intersected with
Returns
This interval

◆ operator==()

bool QwtInterval::operator== ( const QwtInterval other) const
inline

Compare two intervals.

Parameters
otherInterval to compare with
Returns
True, when this and other are equal

◆ operator|() [1/2]

QwtInterval QwtInterval::operator| ( const QwtInterval other) const
inline

Union of two intervals

Parameters
otherInterval to unite with
Returns
Union of this and other
See also
unite()

◆ operator|() [2/2]

QwtInterval QwtInterval::operator| ( double  value) const
inline

Extend an interval

Parameters
valueValue
Returns
Extended interval
See also
extend()

◆ operator|=() [1/2]

QwtInterval & QwtInterval::operator|= ( const QwtInterval other)

Unite this interval with the given interval.

Parameters
otherInterval to be united with
Returns
This interval

◆ operator|=() [2/2]

QwtInterval & QwtInterval::operator|= ( double  value)

Extend an interval

Parameters
valueValue
Returns
Reference of the extended interval
See also
extend()

◆ setBorderFlags()

void QwtInterval::setBorderFlags ( BorderFlags  borderFlags)
inline

Change the border flags

Parameters
borderFlagsOr'd BorderMode flags
See also
borderFlags()

◆ setInterval()

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

◆ setMaxValue()

void QwtInterval::setMaxValue ( double  maxValue)
inline

Assign the upper limit of the interval

Parameters
maxValueMaximum value

◆ setMinValue()

void QwtInterval::setMinValue ( double  minValue)
inline

Assign the lower limit of the interval

Parameters
minValueMinimum value

◆ symmetrize()

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

◆ width()

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().

Returns
Interval width
See also
isValid()