00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** 00002 * Qwt Widget Library 00003 * Copyright (C) 1997 Josef Wilgen 00004 * Copyright (C) 2002 Uwe Rathmann 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the Qwt License, Version 1.0 00008 *****************************************************************************/ 00009 00010 #ifndef QWT_SPLINE_CUBIC_H 00011 #define QWT_SPLINE_CUBIC_H 1 00012 00013 #include "qwt_global.h" 00014 #include "qwt_spline.h" 00015 00033 class QWT_EXPORT QwtSplineCubic: public QwtSplineC2 00034 { 00035 public: 00036 QwtSplineCubic(); 00037 virtual ~QwtSplineCubic(); 00038 00039 virtual uint locality() const; 00040 00041 virtual QPainterPath painterPath( const QPolygonF & ) const; 00042 virtual QVector<QLineF> bezierControlLines( const QPolygonF &points ) const; 00043 00044 // calculating the parametric equations 00045 virtual QVector<QwtSplinePolynomial> polynomials( const QPolygonF & ) const; 00046 virtual QVector<double> slopes( const QPolygonF & ) const; 00047 virtual QVector<double> curvatures( const QPolygonF & ) const; 00048 00049 private: 00050 class PrivateData; 00051 PrivateData *d_data; 00052 }; 00053 00054 #endif