27#ifndef QWT_SPLINE_POLYNOMIAL_H
28#define QWT_SPLINE_POLYNOMIAL_H
30#include "qwt_global.h"
69 double valueAt(
double x )
const;
70 double slopeAt(
double x )
const;
71 double curvatureAt(
double x )
const;
74 const QPointF& p1,
double m1,
75 const QPointF& p2,
double m2 );
78 double x,
double y,
double m1,
double m2 );
81 const QPointF& p1,
double cv1,
82 const QPointF& p2,
double cv2 );
85 double dx,
double dy,
double cv1,
double cv2 );
142 return (
c3 == other.
c3 ) && (
c2 == other.
c2 ) && (
c1 == other.
c1 );
162 return ( !( *
this == other ) );
182 return ( ( (
c3 * x ) +
c2 ) * x +
c1 ) * x;
202 return ( 3.0 *
c3 * x + 2.0 *
c2 ) * x +
c1;
222 return 6.0 *
c3 * x + 2.0 *
c2;
252 const QPointF& p1,
double m1,
const QPointF& p2,
double m2 )
254 return fromSlopes( p2.x() - p1.x(), p2.y() - p1.y(), m1, m2 );
282 double dx,
double dy,
double m1,
double m2 )
284 const double c2 = ( 3.0 * dy / dx - 2 * m1 - m2 ) / dx;
285 const double c3 = ( ( m2 - m1 ) / dx - 2.0 *
c2 ) / ( 3.0 * dx );
317 const QPointF& p1,
double cv1,
const QPointF& p2,
double cv2 )
319 return fromCurvatures( p2.x() - p1.x(), p2.y() - p1.y(), cv1, cv2 );
347 double dx,
double dy,
double cv1,
double cv2 )
349 const double c3 = ( cv2 - cv1 ) / ( 6.0 * dx );
350 const double c2 = 0.5 * cv1;
351 const double c1 = dy / dx - (
c3 * dx +
c2 ) * dx;
356#ifndef QT_NO_DEBUG_STREAM
无常数项的三次多项式
Definition qwt_spline_polynomial.h:62
double slopeAt(double x) const
计算给定 x 处多项式的一阶导数值
Definition qwt_spline_polynomial.h:200
static QwtSplinePolynomial fromSlopes(const QPointF &p1, double m1, const QPointF &p2, double m2)
找出包含两个点及其一阶导数值的多项式系数
Definition qwt_spline_polynomial.h:251
double valueAt(double x) const
计算给定 x 处的多项式值
Definition qwt_spline_polynomial.h:180
bool operator==(const QwtSplinePolynomial &) const
比较两个多项式是否相等
Definition qwt_spline_polynomial.h:140
static QwtSplinePolynomial fromCurvatures(const QPointF &p1, double cv1, const QPointF &p2, double cv2)
找出包含两个点及其二阶导数值的多项式系数
Definition qwt_spline_polynomial.h:316
bool operator!=(const QwtSplinePolynomial &) const
比较两个多项式是否不相等
Definition qwt_spline_polynomial.h:160
double c1
coefficient of the linear summand
Definition qwt_spline_polynomial.h:95
double c3
coefficient of the cubic summand
Definition qwt_spline_polynomial.h:89
double c2
coefficient of the quadratic summand
Definition qwt_spline_polynomial.h:92
double curvatureAt(double x) const
计算给定 x 处多项式的二阶导数值
Definition qwt_spline_polynomial.h:220