QwtSpline(3) | Qwt User's Guide | QwtSpline(3) |
NAME¶
QwtSpline -SYNOPSIS¶
#include <qwt_spline.h>
Public Types¶
enum SplineType { Natural, Periodic }
Public Member Functions¶
QwtSpline ()
QwtSpline (const QwtSpline &)
~QwtSpline ()
const QwtArray< double > & coefficientsA () const
const QwtArray< double > & coefficientsB () const
const QwtArray< double > & coefficientsC () const
bool isValid () const
QwtSpline & operator= (const QwtSpline &)
QPolygonF points () const
void reset ()
bool setPoints (const QPolygonF &points)
void setSplineType (SplineType)
SplineType splineType () const
double value (double x) const
Protected Member Functions¶
bool buildNaturalSpline (const QPolygonF &)
bool buildPeriodicSpline (const QPolygonF &)
Protected Attributes¶
PrivateData * d_data
Detailed Description¶
A class for spline interpolation.The QwtSpline class is used for cubical spline interpolation. Two types of splines, natural and periodic, are supported.
Usage:
- 1.
- First call setPoints() to determine the spline coefficients for a tabulated function y(x).
- 2.
- After the coefficients have been set up, the interpolated function value for an argument x can be determined by calling QwtSpline::value().
Example:
#include <qwt_spline.h> QPolygonF interpolate(const QPolygonF& points, int numValues) { QwtSpline spline; if ( !spline.setPoints(points) ) return points; QPolygonF interpolatedPoints(numValues); const double delta = (points[numPoints - 1].x() - points[0].x()) / (points.size() - 1); for(i = 0; i < points.size(); i++) / interpolate { const double x = points[0].x() + i * delta; interpolatedPoints[i].setX(x); interpolatedPoints[i].setY(spline.value(x)); } return interpolatedPoints; }
Constructor & Destructor Documentation¶
QwtSpline::QwtSpline (const QwtSpline &other)¶
Copy constructorParameters:
other Spline used for initilization
Member Function Documentation¶
bool QwtSpline::buildNaturalSpline (const QPolygonF &points) [protected]¶
Determines the coefficients for a natural spline. Returns:true if successful
bool QwtSpline::buildPeriodicSpline (const QPolygonF &points) [protected]¶
Determines the coefficients for a periodic spline. Returns:true if successful
const QwtArray< double > & QwtSpline::coefficientsA () const¶
Returns:A coefficients
const QwtArray< double > & QwtSpline::coefficientsB () const¶
Returns:B coefficients
const QwtArray< double > & QwtSpline::coefficientsC () const¶
Returns:C coefficients
QwtSpline & QwtSpline::operator= (const QwtSpline &other)¶
Assignment operatorParameters:
other Spline used for initilization
QPolygonF QwtSpline::points () const¶
Return points passed by setPointsbool QwtSpline::setPoints (const QPolygonF &points)¶
Calculate the spline coefficients. Depending on the value of periodic, this function will determine the coefficients for a natural or a periodic spline and store them internally.Parameters:
points Points
Returns:
true if successful
Warning:
The sequence of x (but not y) values has to be strictly
monotone increasing, which means points[i].x() < points[i+1].x(). If
this is not the case, the function will return false
void QwtSpline::setSplineType (SplineTypesplineType)¶
Select the algorithm used for calculating the splineParameters:
splineType Spline type
See also:
splineType()
QwtSpline::SplineType QwtSpline::splineType () const¶
Returns:the spline type
See also:
setSplineType()
double QwtSpline::value (doublex) const¶
Calculate the interpolated function value corresponding to a given argument x.Author¶
Generated automatically by Doxygen for Qwt User's Guide from the source code.Tue Nov 20 2012 | Version 5.2.3 |