|
Qwt User's Guide
6.2.0
|
A spline with C1 continuity. More...
#include <qwt_spline_local.h>
Public Types | |
| enum | Type { Cardinal , ParabolicBlending , Akima , PChip } |
| Spline interpolation type. More... | |
Public Types inherited from QwtSpline | |
| enum | BoundaryType { ConditionalBoundaries , PeriodicPolygon , ClosedPolygon } |
| enum | BoundaryPosition { AtBeginning , AtEnd } |
| enum | BoundaryCondition { Clamped1 , Clamped2 , Clamped3 , LinearRunout } |
| Boundary condition. More... | |
Public Member Functions | |
| QwtSplineLocal (Type type) | |
| Constructor. More... | |
| virtual | ~QwtSplineLocal () |
| Destructor. | |
| Type | type () const |
| virtual uint | locality () const override |
| virtual QPainterPath | painterPath (const QPolygonF &) const override |
| Interpolate a curve with Bezier curves. More... | |
| virtual QVector< QLineF > | bezierControlLines (const QPolygonF &) const override |
| Interpolate a curve with Bezier curves. More... | |
| virtual QVector< QwtSplinePolynomial > | polynomials (const QPolygonF &) const override |
| Calculate the interpolating polynomials for a non parametric spline. More... | |
| virtual QVector< double > | slopes (const QPolygonF &) const override |
| Find the first derivative at the control points. More... | |
Public Member Functions inherited from QwtSplineC1 | |
| QwtSplineC1 () | |
| Constructor. More... | |
| virtual | ~QwtSplineC1 () |
| Destructor. | |
| virtual QPolygonF | equidistantPolygon (const QPolygonF &, double distance, bool withNodes) const override |
| Find an interpolated polygon with "equidistant" points. More... | |
| virtual double | slopeAtBeginning (const QPolygonF &, double slopeNext) const |
| virtual double | slopeAtEnd (const QPolygonF &, double slopeBefore) const |
Public Member Functions inherited from QwtSplineG1 | |
| QwtSplineG1 () | |
| Constructor. | |
| virtual | ~QwtSplineG1 () |
| Destructor. | |
Public Member Functions inherited from QwtSplineInterpolating | |
| QwtSplineInterpolating () | |
| Constructor. | |
| virtual | ~QwtSplineInterpolating () |
| Destructor. | |
| virtual QPolygonF | polygon (const QPolygonF &, double tolerance) const override |
| Interpolate a curve by a polygon. More... | |
Public Member Functions inherited from QwtSpline | |
| QwtSpline () | |
| Constructor. More... | |
| virtual | ~QwtSpline () |
| Destructor. | |
| void | setParametrization (int type) |
| void | setParametrization (QwtSplineParametrization *) |
| const QwtSplineParametrization * | parametrization () const |
| void | setBoundaryType (BoundaryType) |
| BoundaryType | boundaryType () const |
| void | setBoundaryValue (BoundaryPosition, double value) |
| Define the boundary value. More... | |
| double | boundaryValue (BoundaryPosition) const |
| void | setBoundaryCondition (BoundaryPosition, int condition) |
| Define the condition for an endpoint of the spline. More... | |
| int | boundaryCondition (BoundaryPosition) const |
| void | setBoundaryConditions (int condition, double valueBegin=0.0, double valueEnd=0.0) |
| Define the condition at the endpoints of a spline. More... | |
A spline with C1 continuity.
QwtSplineLocal offers several standard algorithms for interpolating a curve with polynomials having C1 continuity at the control points. All algorithms are local in a sense, that changing one control point only few polynomials.
Definition at line 24 of file qwt_spline_local.h.
| enum QwtSplineLocal::Type |
Spline interpolation type.
All type of spline interpolations are lightweight algorithms calculating the slopes at a point by looking 1 or 2 points back and ahead.
Definition at line 34 of file qwt_spline_local.h.
| QwtSplineLocal::QwtSplineLocal | ( | Type | type | ) |
Constructor.
| type | Spline type, specifying the type of interpolation |
Definition at line 450 of file qwt_spline_local.cpp.
|
overridevirtual |
Interpolate a curve with Bezier curves.
Interpolates a polygon piecewise with cubic Bezier curves and returns the 2 control points of each curve as QLineF.
| points | Control points |
Reimplemented from QwtSplineC1.
Definition at line 502 of file qwt_spline_local.cpp.
|
overridevirtual |
The locality of an spline interpolation identifies how many adjacent polynomials are affected, when changing the position of one point.
The Cardinal, ParabolicBlending and PChip algorithms have a locality of 1, while the Akima interpolation has a locality of 2.
Reimplemented from QwtSpline.
Definition at line 552 of file qwt_spline_local.cpp.
|
overridevirtual |
Interpolate a curve with Bezier curves.
Interpolates a polygon piecewise with cubic Bezier curves and returns them as QPainterPath.
| points | Control points |
Reimplemented from QwtSplineC1.
Definition at line 482 of file qwt_spline_local.cpp.
|
overridevirtual |
Calculate the interpolating polynomials for a non parametric spline.
| points | Control points |
Reimplemented from QwtSplineC1.
Definition at line 537 of file qwt_spline_local.cpp.
|
overridevirtual |
Find the first derivative at the control points.
| points | Control nodes of the spline |
Implements QwtSplineC1.
Definition at line 521 of file qwt_spline_local.cpp.
| QwtSplineLocal::Type QwtSplineLocal::type | ( | ) | const |
Definition at line 468 of file qwt_spline_local.cpp.