QwtLinearColorMap builds a color map from color stops. More...
#include <qwt_color_map.h>
Public Types | |
enum | Mode { FixedColors, ScaledColors } |
Public Member Functions | |
QwtLinearColorMap (QwtColorMap::Format=QwtColorMap::RGB) | |
QwtLinearColorMap (const QColor &from, const QColor &to, QwtColorMap::Format=QwtColorMap::RGB) | |
virtual | ~QwtLinearColorMap () |
void | setMode (Mode) |
Mode | mode () const |
void | setColorInterval (const QColor &color1, const QColor &color2) |
void | addColorStop (double value, const QColor &) |
QVector< double > | colorStops () const |
QColor | color1 () const |
QColor | color2 () const |
virtual QRgb | rgb (const QwtInterval &, double value) const |
virtual unsigned char | colorIndex (const QwtInterval &, double value) const |
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.
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.
format | Preferred 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.
color1 | Color used for the minimum value of the value interval | |
color2 | Color used for the maximum value of the value interval | |
format | Preferred format of the coor map |
QwtLinearColorMap::~QwtLinearColorMap | ( | ) | [virtual] |
Destructor.
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)
value | Value between [0.0, 1.0] | |
color | Color stop |
QColor QwtLinearColorMap::color1 | ( | ) | const |
QColor QwtLinearColorMap::color2 | ( | ) | const |
unsigned char QwtLinearColorMap::colorIndex | ( | const QwtInterval & | interval, | |
double | value | |||
) | const [virtual] |
Map a value of a given interval into a color index, between 0 and 255
interval | Range for all values | |
value | Value to map into a color index |
Implements QwtColorMap.
QVector< double > QwtLinearColorMap::colorStops | ( | ) | const |
Return all positions of color stops in increasing order
QwtLinearColorMap::Mode QwtLinearColorMap::mode | ( | ) | const |
QRgb QwtLinearColorMap::rgb | ( | const QwtInterval & | interval, | |
double | value | |||
) | const [virtual] |
Map a value of a given interval into a rgb value
interval | Range for all values | |
value | Value to map into a rgb value |
Implements QwtColorMap.
void QwtLinearColorMap::setColorInterval | ( | const QColor & | color1, | |
const QColor & | color2 | |||
) |