QWT API (中文) 7.0.1
Qt绘图库 - 中文API文档
载入中...
搜索中...
未找到
Public 类型 | Public 成员函数 | 所有成员列表
QwtSplineC2类 参考abstract

提供 C2(二阶参数)连续性的样条插值基类 更多...

#include <qwt_spline.h>

类 QwtSplineC2 继承关系图:
QwtSplineC1 QwtSplineG1 QwtSplineInterpolating QwtSpline QwtSplineCubic

Public 类型

enum  BoundaryConditionC2 { CubicRunout = LinearRunout + 1 , NotAKnot }
 Boundary condition that requires C2 continuity 更多...
 
- Public 类型 继承自 QwtSpline
enum  BoundaryType { ConditionalBoundaries , PeriodicPolygon , ClosedPolygon }
 指定样条端点处的边界类型 更多...
 
enum  BoundaryPosition { AtBeginning , AtEnd }
 边界条件的位置 更多...
 
enum  BoundaryCondition { Clamped1 , Clamped2 , Clamped3 , LinearRunout }
 边界条件 更多...
 

Public 成员函数

 QwtSplineC2 ()
 构造函数
 
virtual ~QwtSplineC2 ()
 析构函数
 
virtual QPainterPath painterPath (const QPolygonF &) const override
 使用贝塞尔曲线插值曲线
 
virtual QVector< QLineF > bezierControlLines (const QPolygonF &) const override
 使用贝塞尔曲线插值曲线
 
virtual QPolygonF equidistantPolygon (const QPolygonF &, double distance, bool withNodes) const override
 查找具有"等距"点的插值多边形
 
virtual QVector< QwtSplinePolynomialpolynomials (const QPolygonF &) const override
 计算非参数样条的插值多项式
 
virtual QVector< double > slopes (const QPolygonF &) const override
 在控制点处找到一阶导数
 
virtual QVector< double > curvatures (const QPolygonF &) const =0
 Find the second derivative at the control points
 
- Public 成员函数 继承自 QwtSplineC1
 QwtSplineC1 ()
 构造函数
 
virtual ~QwtSplineC1 ()
 析构函数
 
virtual double slopeAtBeginning (const QPolygonF &, double slopeNext) const
 计算样条起始处的斜率
 
virtual double slopeAtEnd (const QPolygonF &, double slopeBefore) const
 计算样条结束处的斜率
 
- Public 成员函数 继承自 QwtSplineG1
 QwtSplineG1 ()
 构造函数
 
virtual ~QwtSplineG1 ()
 析构函数
 
- Public 成员函数 继承自 QwtSplineInterpolating
 QwtSplineInterpolating ()
 构造函数
 
virtual ~QwtSplineInterpolating ()
 析构函数
 
virtual QPolygonF polygon (const QPolygonF &, double tolerance) const override
 用多边形插值曲线
 
- Public 成员函数 继承自 QwtSpline
 QwtSpline ()
 Constructor
 
virtual ~QwtSpline ()
 Destructor
 
void setParametrization (int type)
 Set parametrization by type
 
void setParametrization (QwtSplineParametrization *)
 Set parametrization object
 
const QwtSplineParametrizationparametrization () const
 Get parametrization
 
void setBoundaryType (BoundaryType)
 Set boundary type
 
BoundaryType boundaryType () const
 Get boundary type
 
void setBoundaryValue (BoundaryPosition, double value)
 Set boundary value
 
double boundaryValue (BoundaryPosition) const
 Get boundary value
 
void setBoundaryCondition (BoundaryPosition, int condition)
 Set boundary condition
 
int boundaryCondition (BoundaryPosition) const
 Get boundary condition
 
void setBoundaryConditions (int condition, double valueBegin=0.0, double valueEnd=0.0)
 Set boundary conditions for both ends
 
virtual uint locality () const
 Get locality (number of points used for calculation)
 

详细描述

提供 C2(二阶参数)连续性的样条插值基类

成员枚举类型说明

◆ BoundaryConditionC2

Boundary condition that requires C2 continuity

参见
QwtSpline::boundaryCondition, QwtSpline::BoundaryCondition
枚举值
CubicRunout 

The second derivate at the endpoint is related to the second derivatives at the 2 neighbours: cv[0] := 2.0 * cv[1] - cv[2].

注解
boundaryValue() is ignored
NotAKnot 

The 3rd derivate at the endpoint matches the 3rd derivate at its neighbours.

Or in other words: the first/last curve segment extents the polynomial of its neighboured polynomial

注解
boundaryValue() is ignored

构造及析构函数说明

◆ QwtSplineC2()

QwtSplineC2::QwtSplineC2 ( )

构造函数

◆ ~QwtSplineC2()

QwtSplineC2::~QwtSplineC2 ( )
virtual

析构函数

成员函数说明

◆ bezierControlLines()

QVector< QLineF > QwtSplineC2::bezierControlLines ( const QPolygonF &  points) const
overridevirtual

使用贝塞尔曲线插值曲线

重载 QwtSplineC1 .

QwtSplineCubic 重载.

◆ curvatures()

QVector< double > QwtSplineC2::curvatures ( const QPolygonF &  points) const
pure virtual

Find the second derivative at the control points

参数
pointsControl nodes of the spline
返回
Vector with the values of the 2nd derivate at the control points
参见
slopes()
注解
The x coordinates need to be increasing or decreasing

QwtSplineCubic 内被实现.

◆ equidistantPolygon()

QPolygonF QwtSplineC2::equidistantPolygon ( const QPolygonF &  points,
double  distance,
bool  withNodes 
) const
overridevirtual

查找具有"等距"点的插值多边形

重载 QwtSplineC1 .

◆ painterPath()

QPainterPath QwtSplineC2::painterPath ( const QPolygonF &  points) const
overridevirtual

使用贝塞尔曲线插值曲线

重载 QwtSplineC1 .

QwtSplineCubic 重载.

◆ polynomials()

QVector< QwtSplinePolynomial > QwtSplineC2::polynomials ( const QPolygonF &  points) const
overridevirtual

计算非参数样条的插值多项式

重载 QwtSplineC1 .

QwtSplineCubic 重载.

◆ slopes()

QVector< double > QwtSplineC2::slopes ( const QPolygonF &  points) const
overridevirtual

在控制点处找到一阶导数

实现了 QwtSplineC1.

QwtSplineCubic 重载.


该类的文档由以下文件生成: