#include <qwt_dimap.h>
Inheritance diagram for QwtDiMap:

Public Member Functions | |
| QwtDiMap () | |
| QwtDiMap (int i1, int i2, double d1, double d2, bool lg=FALSE) | |
| ~QwtDiMap () | |
| bool | contains (double x) const |
| bool | contains (int x) const |
| void | setIntRange (int i1, int i2) |
| void | setDblRange (double d1, double d2, bool lg=FALSE) |
| int | transform (double x) const |
| double | invTransform (int i) const |
| int | limTransform (double x) const |
| double | xTransform (double x) const |
| double | d1 () const |
| double | d2 () const |
| int | i1 () const |
| int | i2 () const |
| bool | logarithmic () const |
Public Attributes | |
| QT_STATIC_CONST double | LogMin = 1.0e-150 |
| QT_STATIC_CONST double | LogMax = 1.0e150 |
Private Member Functions | |
| void | newFactor () |
Private Attributes | |
| double | d_x1 |
| double | d_x2 |
| int | d_y1 |
| int | d_y2 |
| double | d_cnv |
| bool | d_log |
The QwtDiMap class maps an interval of type double into an interval of type int. It consists of two intervals D = [d1, d2] (double) and I = [i1, i2] (int), which are specified with the QwtDiMap::setDblRange and QwtDiMap::setIntRange members. The point d1 is mapped to the point i1, and d2 is mapped to i2. Any point inside or outside D can be mapped to a point inside or outside I using QwtDiMap::transform or QwtDiMap::limTransform or vice versa using QwtPlot::invTransform. D can be scaled linearly or logarithmically, as specified with QwtDiMap::setDblRange.
Usage
#include <qwt_dimap.h> QwtDiMap map; int ival; double dval; map.setDblRange(0.0, 3.1415); // Assign an interval of type double with // linear mapping map.setIntRange(0,100); // Assign an integer interval ival = map.transform(1.0); // obtain integer value corresponding to 1.0 dval = map.invTransform(77); // obtain double value corresponding to 77
Definition at line 45 of file qwt_dimap.h.
|
|
Constructor. The double and integer intervals are both set to [0,1]. Definition at line 22 of file qwt_dimap.cpp. |
|
||||||||||||||||||||||||
|
Constructor. Constructs a QwtDiMap instance with initial integer and double intervals
Definition at line 44 of file qwt_dimap.cpp. References d_log, setDblRange(), and setIntRange(). |
|
|
Destructor.
Definition at line 54 of file qwt_dimap.cpp. |
|
|
Definition at line 73 of file qwt_dimap.cpp. |
|
|
Definition at line 63 of file qwt_dimap.cpp. |
|
|
Definition at line 85 of file qwt_dimap.h. References d_x1. Referenced by QwtSlider::getValue(), and QwtSlider::xyPosition(). |
|
|
Definition at line 93 of file qwt_dimap.h. References d_x2. Referenced by QwtSlider::getValue(), and QwtSlider::xyPosition(). |
|
|
Definition at line 101 of file qwt_dimap.h. References d_y1. Referenced by QwtScaleDraw::drawBackbone(), QwtSlider::getScrollMode(), QwtSlider::getValue(), and QwtSlider::xyPosition(). |
|
|
Definition at line 109 of file qwt_dimap.h. References d_y2. Referenced by QwtScaleDraw::drawBackbone(), QwtSlider::getScrollMode(), QwtSlider::getValue(), and QwtSlider::xyPosition(). |
|
|
Transform an integer value into a double value.
Definition at line 155 of file qwt_dimap.cpp. References d_cnv, d_log, d_x1, and d_y1. Referenced by QwtSlider::getValue(), and QwtPlot::invTransform(). |
|
|
Transform and limit. The function is similar to QwtDiMap::transform, but limits the input value to the nearest border of the map's double interval if it lies outside that interval.
Definition at line 179 of file qwt_dimap.cpp. References d_x1, d_x2, qwtMax, qwtMin, and transform(). Referenced by QwtThermo::drawThermo(). |
|
|
Definition at line 117 of file qwt_dimap.h. References d_log. |
|
|
Re-calculate the conversion factor.
Definition at line 216 of file qwt_dimap.cpp. References d_cnv, d_x1, d_x2, d_y1, and d_y2. Referenced by setDblRange(), and setIntRange(). |
|
||||||||||||||||
|
Specify the borders of the double interval.
Definition at line 84 of file qwt_dimap.cpp. References d_log, d_x1, d_x2, LogMax, LogMin, and newFactor(). Referenced by QwtThermo::init(), QwtPlot::print(), QwtDiMap(), QwtThermo::setRange(), and QwtScaleDraw::setScale(). |
|
||||||||||||
|
Specify the borders of the integer interval.
Definition at line 116 of file qwt_dimap.cpp. References d_y1, d_y2, and newFactor(). Referenced by QwtPlot::canvasMap(), QwtSlider::layoutSlider(), QwtThermo::layoutThermo(), QwtPlot::print(), QwtDiMap(), QwtScaleDraw::setAngleRange(), and QwtScaleDraw::setGeometry(). |
|
|
Transform a point in double interval into an point in the integer interval.
Definition at line 138 of file qwt_dimap.cpp. References d_cnv, d_log, d_x1, and d_y1. Referenced by QwtCurve::closePolyline(), QwtGrid::draw(), QwtCurve::drawDots(), QwtCurve::drawLines(), QwtCurve::drawSteps(), QwtCurve::drawSticks(), QwtCurve::drawSymbols(), QwtScaleDraw::drawTick(), QwtScaleDraw::labelPlacement(), limTransform(), QwtPlot::transform(), and QwtSlider::xyPosition(). |
|
|
Exact transformation. This function is similar to QwtDiMap::transform, but makes the integer interval appear to be double.
Definition at line 200 of file qwt_dimap.cpp. References d_cnv, d_log, d_x1, and d_y1. Referenced by QwtCurve::drawSpline(). |
|
|
Definition at line 78 of file qwt_dimap.h. Referenced by invTransform(), newFactor(), QwtDiMap(), transform(), and xTransform(). |
|
|
Definition at line 79 of file qwt_dimap.h. Referenced by invTransform(), logarithmic(), QwtDiMap(), setDblRange(), transform(), and xTransform(). |
|
|
Definition at line 76 of file qwt_dimap.h. Referenced by contains(), d1(), invTransform(), limTransform(), newFactor(), QwtDiMap(), setDblRange(), transform(), and xTransform(). |
|
|
Definition at line 76 of file qwt_dimap.h. Referenced by contains(), d2(), limTransform(), newFactor(), QwtDiMap(), and setDblRange(). |
|
|
Definition at line 77 of file qwt_dimap.h. Referenced by contains(), i1(), invTransform(), newFactor(), QwtDiMap(), setIntRange(), transform(), and xTransform(). |
|
|
Definition at line 77 of file qwt_dimap.h. Referenced by contains(), i2(), newFactor(), QwtDiMap(), and setIntRange(). |
|
|
Definition at line 14 of file qwt_dimap.cpp. Referenced by setDblRange(). |
|
|
Definition at line 13 of file qwt_dimap.cpp. Referenced by setDblRange(). |
1.3.2