QwtSpline

Langue: en

Version: 121678 (mandriva - 01/05/08)

Section: 3 (Bibliothèques de fonctions)

NAME

QwtSpline -

SYNOPSIS


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:.RS 4

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:.RS 4

 #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;
 }
 
 


 

Definition at line 77 of file qwt_spline.h.

Public Types


enum SplineType { Natural, Periodic }

Public Member Functions


QwtSpline ()

QwtSpline (const QwtSpline &)

~QwtSpline ()

QwtSpline & operator= (const QwtSpline &)

void setSplineType (SplineType)

SplineType splineType () const

bool setPoints (const QPolygonF &points)

QPolygonF points () const

void reset ()

bool isValid () const

double value (double x) const

Protected Member Functions


bool buildNaturalSpline (const QPolygonF &)

bool buildPeriodicSpline (const QPolygonF &)

Protected Attributes


PrivateData * d_data

Constructor & Destructor Documentation

QwtSpline::QwtSpline ()

Constructor.

Definition at line 73 of file qwt_spline.cpp.

References d_data.

QwtSpline::~QwtSpline ()

Destructor.

Definition at line 90 of file qwt_spline.cpp.

References d_data.

Member Function Documentation

bool QwtSpline::buildNaturalSpline (const QPolygonF & points) [protected]

Determines the coefficients for a natural spline.

Returns:

true if successful

Definition at line 209 of file qwt_spline.cpp.

bool QwtSpline::buildPeriodicSpline (const QPolygonF & points) [protected]

Determines the coefficients for a periodic spline.

Returns:

true if successful

Definition at line 292 of file qwt_spline.cpp.

bool QwtSpline::isValid () const

True if valid.

Definition at line 181 of file qwt_spline.cpp.

References d_data.

QPolygonF QwtSpline::points () const

Return points passed by setPoints

Definition at line 164 of file qwt_spline.cpp.

void QwtSpline::reset ()

Free allocated memory and set size to 0.

Definition at line 172 of file qwt_spline.cpp.

References d_data.

bool QwtSpline::setPoints (const QPolygonF & points)

Determine the function table index corresponding to a value x 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:

x
y points
size number of points
periodic if true, calculate periodic spline

Returns:

true if successful

Warning:

The sequence of x (but not y) values has to be strictly monotone increasing, which means x[0] < x[1] < .... < x[n-1]. If this is not the case, the function will return false

Definition at line 126 of file qwt_spline.cpp.

double QwtSpline::value (double x) const

Calculate the interpolated function value corresponding to a given argument x.

Definition at line 190 of file qwt_spline.cpp.

References d_data.

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.