10#include "qwt_interval.h"
14 static const struct RegisterQwtInterval
16 inline RegisterQwtInterval() { qRegisterMetaType< QwtInterval >(); }
18 } qwtRegisterQwtInterval;
31 if ( m_minValue > m_maxValue )
72 if ( ( value < m_minValue ) || ( value > m_maxValue ) )
75 if ( ( value == m_minValue ) && ( m_borderFlags &
ExcludeMinimum ) )
78 if ( ( value == m_maxValue ) && ( m_borderFlags &
ExcludeMaximum ) )
95 if ( ( interval.m_minValue < m_minValue ) || ( interval.m_maxValue > m_maxValue ) )
100 if ( interval.m_minValue == m_minValue )
109 if ( interval.m_maxValue == m_maxValue )
143 if ( m_minValue < other.
minValue() )
148 else if ( other.
minValue() < m_minValue )
160 if ( m_maxValue > other.
maxValue() )
165 else if ( other.
maxValue() > m_maxValue )
255 *
this = *
this | other;
267 *
this = *
this & other;
323 qMax( qAbs( value - m_maxValue ), qAbs( value - m_minValue ) );
325 return QwtInterval( value - delta, value + delta );
338 if ( !
isValid() || lowerBound > upperBound )
341 double minValue = qMax( m_minValue, lowerBound );
344 double maxValue = qMax( m_maxValue, lowerBound );
369 qMax( value, m_maxValue ), m_borderFlags );
382 *
this = *
this | value;
386#ifndef QT_NO_DEBUG_STREAM
390QDebug operator<<( QDebug debug,
const QwtInterval& interval )
394 debug.nospace() <<
"QwtInterval("
396 << interval.minValue() <<
"," << interval.maxValue()
397 << ( ( flags&
QwtInterval::ExcludeMaximum ) ?
"[" :
"]" )
400 return debug.space();
A class representing an interval.
QwtInterval normalized() const
Normalize the limits of the interval.
QwtInterval & operator&=(const QwtInterval &)
Intersect this interval with the given interval.
@ ExcludeMaximum
Max value is not included in the interval.
@ ExcludeMinimum
Min value is not included in the interval.
@ IncludeBorders
Min/Max values are inside the interval.
QwtInterval unite(const QwtInterval &) const
Unite 2 intervals.
bool intersects(const QwtInterval &) const
Test if two intervals overlap.
QwtInterval limited(double lowerBound, double upperBound) const
QwtInterval & operator|=(const QwtInterval &)
Unite this interval with the given interval.
QwtInterval extend(double value) const
Extend the interval.
QwtInterval inverted() const
QwtInterval intersect(const QwtInterval &) const
Intersect 2 intervals.
BorderFlags borderFlags() const
QwtInterval()
Default Constructor.
void setBorderFlags(BorderFlags)
bool contains(double value) const
QFlags< BorderFlag > BorderFlags
Border flags.
QwtInterval symmetrize(double value) const