Qwt User's Guide 5.2.2
Public Types | Public Member Functions

QwtLinearColorMap Class Reference

QwtLinearColorMap builds a color map from color stops. More...

#include <qwt_color_map.h>

Inheritance diagram for QwtLinearColorMap:
Inheritance graph
[legend]

List of all members.

Public Types

enum  Format {
  RGB,
  Indexed
}
enum  Mode {
  FixedColors,
  ScaledColors
}

Public Member Functions

void addColorStop (double value, const QColor &)
QColor color (const QwtDoubleInterval &, double value) const
QColor color1 () const
QColor color2 () const
virtual unsigned char colorIndex (const QwtDoubleInterval &, double value) const
QwtArray< double > colorStops () const
virtual QVector< QRgb > colorTable (const QwtDoubleInterval &) const
virtual QwtColorMapcopy () const
Format format () const
Mode mode () const
QwtLinearColorMapoperator= (const QwtLinearColorMap &)
 QwtLinearColorMap (const QColor &from, const QColor &to, QwtColorMap::Format=QwtColorMap::RGB)
 QwtLinearColorMap (QwtColorMap::Format=QwtColorMap::RGB)
 QwtLinearColorMap (const QwtLinearColorMap &)
virtual QRgb rgb (const QwtDoubleInterval &, double value) const
void setColorInterval (const QColor &color1, const QColor &color2)
void setMode (Mode)
virtual ~QwtLinearColorMap ()

Detailed Description

QwtLinearColorMap builds a color map from color stops.

A color stop is a color at a specific position. The valid range for the positions is [0.0, 1.0]. When mapping a value into a color it is translated into this interval. If mode() == FixedColors the color is calculated from the next lower color stop. If mode() == ScaledColors the color is calculated by interpolating the colors of the adjacent stops.


Member Enumeration Documentation

enum QwtColorMap::Format [inherited]
  • RGB
    The map is intended to map into QRgb values.
  • Indexed
    The map is intended to map into 8 bit values, that are indices into the color table.
See also:
rgb(), colorIndex(), colorTable()

Mode of color map

See also:
setMode(), mode()

Constructor & Destructor Documentation

QwtLinearColorMap::QwtLinearColorMap ( QwtColorMap::Format  format = QwtColorMap::RGB)

Build a color map with two stops at 0.0 and 1.0. The color at 0.0 is Qt::blue, at 1.0 it is Qt::yellow.

Parameters:
formatPreferred format of the color map
QwtLinearColorMap::QwtLinearColorMap ( const QColor &  color1,
const QColor &  color2,
QwtColorMap::Format  format = QwtColorMap::RGB 
)

Build a color map with two stops at 0.0 and 1.0.

Parameters:
color1Color used for the minimum value of the value interval
color2Color used for the maximum value of the value interval
formatPreferred format of the coor map
QwtLinearColorMap::QwtLinearColorMap ( const QwtLinearColorMap other)

Copy constructor.

QwtLinearColorMap::~QwtLinearColorMap ( ) [virtual]

Destructor.


Member Function Documentation

void QwtLinearColorMap::addColorStop ( double  value,
const QColor &  color 
)

Add a color stop

The value has to be in the range [0.0, 1.0]. F.e. a stop at position 17.0 for a range [10.0,20.0] must be passed as: (17.0 - 10.0) / (20.0 - 10.0)

Parameters:
valueValue between [0.0, 1.0]
colorColor stop
QColor QwtColorMap::color ( const QwtDoubleInterval interval,
double  value 
) const [inline, inherited]

Map a value into a color

Parameters:
intervalValid interval for values
valueValue
Returns:
Color corresponding to value
Warning:
This method is slow for Indexed color maps. If it is necessary to map many values, its better to get the color table once and find the color using colorIndex().
QColor QwtLinearColorMap::color1 ( ) const
Returns:
the first color of the color range
See also:
setColorInterval()
QColor QwtLinearColorMap::color2 ( ) const
Returns:
the second color of the color range
See also:
setColorInterval()
unsigned char QwtLinearColorMap::colorIndex ( const QwtDoubleInterval interval,
double  value 
) const [virtual]

Map a value of a given interval into a color index, between 0 and 255

Parameters:
intervalRange for all values
valueValue to map into a color index

Implements QwtColorMap.

QwtArray< double > QwtLinearColorMap::colorStops ( ) const

Return all positions of color stops in increasing order

QwtColorTable QwtColorMap::colorTable ( const QwtDoubleInterval interval) const [virtual, inherited]

Build and return a color map of 256 colors

The color table is needed for rendering indexed images in combination with using colorIndex().

Parameters:
intervalRange for the values
Returns:
A color table, that can be used for a QImage
QwtColorMap * QwtLinearColorMap::copy ( ) const [virtual]

Clone the color map.

Implements QwtColorMap.

QwtColorMap::Format QwtColorMap::format ( ) const [inline, inherited]
Returns:
Intended format of the color map
See also:
Format
QwtLinearColorMap::Mode QwtLinearColorMap::mode ( ) const
Returns:
Mode of the color map
See also:
setMode()
QwtLinearColorMap & QwtLinearColorMap::operator= ( const QwtLinearColorMap other)

Assignment operator.

QRgb QwtLinearColorMap::rgb ( const QwtDoubleInterval interval,
double  value 
) const [virtual]

Map a value of a given interval into a rgb value

Parameters:
intervalRange for all values
valueValue to map into a rgb value

Implements QwtColorMap.

void QwtLinearColorMap::setColorInterval ( const QColor &  color1,
const QColor &  color2 
)

Set the color range

Add stops at 0.0 and 1.0.

Parameters:
color1Color used for the minimum value of the value interval
color2Color used for the maximum value of the value interval
See also:
color1(), color2()
void QwtLinearColorMap::setMode ( Mode  mode)

Set the mode of the color map.

FixedColors means the color is calculated from the next lower color stop. ScaledColors means the color is calculated by interpolating the colors of the adjacent stops.

See also:
mode()