Qwt User's Guide
|
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_PLOT_CURVE_3D_H 00011 #define QWT_PLOT_CURVE_3D_H 00012 00013 #include "qwt_global.h" 00014 #include "qwt_plot_seriesitem.h" 00015 #include "qwt_series_data.h" 00016 00017 class QwtSymbol; 00018 class QwtColorMap; 00019 00024 class QWT_EXPORT QwtPlotSpectroCurve: 00025 public QwtPlotSeriesItem, QwtSeriesStore<QwtPoint3D> 00026 { 00027 public: 00029 enum PaintAttribute 00030 { 00032 ClipPoints = 1 00033 }; 00034 00036 typedef QFlags<PaintAttribute> PaintAttributes; 00037 00038 explicit QwtPlotSpectroCurve( const QString &title = QString::null ); 00039 explicit QwtPlotSpectroCurve( const QwtText &title ); 00040 00041 virtual ~QwtPlotSpectroCurve(); 00042 00043 virtual int rtti() const; 00044 00045 void setPaintAttribute( PaintAttribute, bool on = true ); 00046 bool testPaintAttribute( PaintAttribute ) const; 00047 00048 void setSamples( const QVector<QwtPoint3D> & ); 00049 void setSamples( QwtSeriesData<QwtPoint3D> * ); 00050 00051 00052 void setColorMap( QwtColorMap * ); 00053 const QwtColorMap *colorMap() const; 00054 00055 void setColorRange( const QwtInterval & ); 00056 QwtInterval & colorRange() const; 00057 00058 virtual void drawSeries( QPainter *, 00059 const QwtScaleMap &xMap, const QwtScaleMap &yMap, 00060 const QRectF &canvasRect, int from, int to ) const; 00061 00062 void setPenWidth(double width); 00063 double penWidth() const; 00064 00065 protected: 00066 virtual void drawDots( QPainter *, 00067 const QwtScaleMap &xMap, const QwtScaleMap &yMap, 00068 const QRectF &canvasRect, int from, int to ) const; 00069 00070 private: 00071 void init(); 00072 00073 class PrivateData; 00074 PrivateData *d_data; 00075 }; 00076 00077 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtPlotSpectroCurve::PaintAttributes ) 00078 00079 #endif