A curve fitter using cubic splines. More...
#include <qwt_curve_fitter.h>


Classes | |
| class | PrivateData |
Public Types | |
| enum | FitMode { Auto, Spline, ParametricSpline } |
Public Member Functions | |
| QwtSplineCurveFitter () | |
| Constructor. | |
| virtual | ~QwtSplineCurveFitter () |
| Destructor. | |
| void | setFitMode (FitMode) |
| FitMode | fitMode () const |
| void | setSpline (const QwtSpline &) |
| const QwtSpline & | spline () const |
| QwtSpline & | spline () |
| void | setSplineSize (int size) |
| int | splineSize () const |
| virtual QMemArray< QwtDoublePoint > | fitCurve (const QMemArray< QwtDoublePoint > &) const |
A curve fitter using cubic splines.
Definition at line 71 of file qwt_curve_fitter.h.
Definition at line 74 of file qwt_curve_fitter.h.
{
Auto,
Spline,
ParametricSpline
};
| QwtSplineCurveFitter::QwtSplineCurveFitter | ( | ) |
| QwtSplineCurveFitter::~QwtSplineCurveFitter | ( | ) | [virtual] |
| QMemArray< QwtDoublePoint > QwtSplineCurveFitter::fitCurve | ( | const QMemArray< QwtDoublePoint > & | points ) | const [virtual] |
Find a curve which has the best fit to a series of data points
| points | Series of data points |
Implements QwtCurveFitter.
Definition at line 103 of file qwt_curve_fitter.cpp.
References int().
{
const int size = (int)points.size();
if ( size <= 2 )
return points;
FitMode fitMode = d_data->fitMode;
if ( fitMode == Auto )
{
fitMode = Spline;
const QwtDoublePoint *p = points.data();
for ( int i = 1; i < size; i++ )
{
if ( p[i].x() <= p[i-1].x() )
{
fitMode = ParametricSpline;
break;
}
};
}
if ( fitMode == ParametricSpline )
return fitParametric(points);
else
return fitSpline(points);
}
| QwtSplineCurveFitter::FitMode QwtSplineCurveFitter::fitMode | ( | ) | const |
Definition at line 65 of file qwt_curve_fitter.cpp.
References QwtSplineCurveFitter::PrivateData::fitMode.
{
return d_data->fitMode;
}
| void QwtSplineCurveFitter::setFitMode | ( | FitMode | mode ) |
Select the algorithm used for building the spline
| mode | Mode representing a spline algorithm |
Definition at line 56 of file qwt_curve_fitter.cpp.
References QwtSplineCurveFitter::PrivateData::fitMode.
{
d_data->fitMode = mode;
}
| void QwtSplineCurveFitter::setSpline | ( | const QwtSpline & | spline ) |
Definition at line 70 of file qwt_curve_fitter.cpp.
References QwtSpline::reset(), spline(), and QwtSplineCurveFitter::PrivateData::spline.
| void QwtSplineCurveFitter::setSplineSize | ( | int | size ) |
Definition at line 86 of file qwt_curve_fitter.cpp.
References qwtMax, and QwtSplineCurveFitter::PrivateData::splineSize.
{
d_data->splineSize = qwtMax(splineSize, 10);
}
| const QwtSpline & QwtSplineCurveFitter::spline | ( | ) | const |
Definition at line 76 of file qwt_curve_fitter.cpp.
References QwtSplineCurveFitter::PrivateData::spline.
Referenced by setSpline().
{
return d_data->spline;
}
| QwtSpline & QwtSplineCurveFitter::spline | ( | ) |
Definition at line 81 of file qwt_curve_fitter.cpp.
References QwtSplineCurveFitter::PrivateData::spline.
{
return d_data->spline;
}
| int QwtSplineCurveFitter::splineSize | ( | ) | const |
Definition at line 91 of file qwt_curve_fitter.cpp.
References QwtSplineCurveFitter::PrivateData::splineSize.
{
return d_data->splineSize;
}
1.7.2