Qwt User's Guide 6.3.0

Loading...
Searching...
No Matches
qwt_transform.cpp
1/******************************************************************************
2 * Qwt Widget Library
3 * Copyright (C) 1997 Josef Wilgen
4 * Copyright (C) 2002 Uwe Rathmann
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the Qwt License, Version 1.0
8 *****************************************************************************/
9
10#include "qwt_transform.h"
11#include "qwt_math.h"
12
14 const double QwtLogTransform::LogMin = 1.0e-150;
15
17 const double QwtLogTransform::LogMax = 1.0e150;
18
20 QwtTransform::QwtTransform()
21{
22}
23
25 QwtTransform::~QwtTransform()
26{
27}
28
33 double QwtTransform::bounded( double value ) const
34{
35 return value;
36}
37
39 QwtNullTransform::QwtNullTransform():
40 QwtTransform()
41{
42}
43
45 QwtNullTransform::~QwtNullTransform()
46{
47}
48
53 double QwtNullTransform::transform( double value ) const
54{
55 return value;
56}
57
62 double QwtNullTransform::invTransform( double value ) const
63{
64 return value;
65}
66
68 QwtTransform* QwtNullTransform::copy() const
69{
70 return new QwtNullTransform();
71}
72
74 QwtLogTransform::QwtLogTransform():
75 QwtTransform()
76{
77}
78
80 QwtLogTransform::~QwtLogTransform()
81{
82}
83
88 double QwtLogTransform::transform( double value ) const
89{
90 return std::log( value );
91}
92
97 double QwtLogTransform::invTransform( double value ) const
98{
99 return std::exp( value );
100}
101
106 double QwtLogTransform::bounded( double value ) const
107{
108 return qBound( LogMin, value, LogMax );
109}
110
112 QwtTransform* QwtLogTransform::copy() const
113{
114 return new QwtLogTransform();
115}
116
121 QwtPowerTransform::QwtPowerTransform( double exponent ):
122 QwtTransform(),
123 m_exponent( exponent )
124{
125}
126
128 QwtPowerTransform::~QwtPowerTransform()
129{
130}
131
136 double QwtPowerTransform::transform( double value ) const
137{
138 if ( value < 0.0 )
139 return -std::pow( -value, 1.0 / m_exponent );
140 else
141 return std::pow( value, 1.0 / m_exponent );
142
143}
144
149 double QwtPowerTransform::invTransform( double value ) const
150{
151 if ( value < 0.0 )
152 return -std::pow( -value, m_exponent );
153 else
154 return std::pow( value, m_exponent );
155}
156
158 QwtTransform* QwtPowerTransform::copy() const
159{
160 return new QwtPowerTransform( m_exponent );
161}
QwtLogTransform::LogMax
static const double LogMax
Largest allowed value for logarithmic scales: 1.0e150.
Definition qwt_transform.h:114
QwtLogTransform::LogMin
static const double LogMin
Smallest allowed value for logarithmic scales: 1.0e-150.
Definition qwt_transform.h:113
QwtLogTransform::~QwtLogTransform
virtual ~QwtLogTransform()
Destructor.
Definition qwt_transform.cpp:80
QwtLogTransform::invTransform
virtual double invTransform(double value) const override
Definition qwt_transform.cpp:97
QwtLogTransform::copy
virtual QwtTransform * copy() const override
Definition qwt_transform.cpp:112
QwtLogTransform::transform
virtual double transform(double value) const override
Definition qwt_transform.cpp:88
QwtLogTransform::QwtLogTransform
QwtLogTransform()
Constructor.
Definition qwt_transform.cpp:74
QwtLogTransform::bounded
virtual double bounded(double value) const override
Definition qwt_transform.cpp:106
QwtNullTransform::QwtNullTransform
QwtNullTransform()
Constructor.
Definition qwt_transform.cpp:39
QwtNullTransform::invTransform
virtual double invTransform(double value) const override
Definition qwt_transform.cpp:62
QwtNullTransform::~QwtNullTransform
virtual ~QwtNullTransform()
Destructor.
Definition qwt_transform.cpp:45
QwtNullTransform::transform
virtual double transform(double value) const override
Definition qwt_transform.cpp:53
QwtNullTransform::copy
virtual QwtTransform * copy() const override
Definition qwt_transform.cpp:68
QwtPowerTransform::invTransform
virtual double invTransform(double value) const override
Definition qwt_transform.cpp:149
QwtPowerTransform::~QwtPowerTransform
virtual ~QwtPowerTransform()
Destructor.
Definition qwt_transform.cpp:128
QwtPowerTransform::copy
virtual QwtTransform * copy() const override
Definition qwt_transform.cpp:158
QwtPowerTransform::transform
virtual double transform(double value) const override
Definition qwt_transform.cpp:136
QwtPowerTransform::QwtPowerTransform
QwtPowerTransform(double exponent)
Definition qwt_transform.cpp:121
QwtTransform
A transformation between coordinate systems.
Definition qwt_transform.h:36
QwtTransform::QwtTransform
QwtTransform()
Constructor.
Definition qwt_transform.cpp:20
QwtTransform::~QwtTransform
virtual ~QwtTransform()
Destructor.
Definition qwt_transform.cpp:25
QwtTransform::bounded
virtual double bounded(double value) const
Definition qwt_transform.cpp:33