#include <qwt_dimap.h>
Inheritance diagram for QwtDiMap::
Public Methods | |
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 |
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
|
Constructor.
The double and integer intervals are both set to [0,1]. |
|
Constructor.
Constructs a QwtDiMap instance with initial integer and double intervals
|
|
Destructor.
|
|
\eturn TRUE if a value x lies inside or at the border of the map's integer range
|
|
|
|
|
|
|
|
|
|
|
|
Transform an integer value into a double value.
|
|
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.
|
|
|
|
Specify the borders of the double interval.
|
|
Specify the borders of the integer interval.
|
|
Transform a point in double interval into an point in the integer interval.
|
|
Exact transformation.
This function is similar to QwtDiMap::transform, but makes the integer interval appear to be double.
|