qwt_raster_data.h
Go to the documentation of this file.
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_RASTER_DATA_H
00011 #define QWT_RASTER_DATA_H 1
00012 
00013 #include "qwt_global.h"
00014 #include "qwt_interval.h"
00015 #include <qmap.h>
00016 #include <qlist.h>
00017 #include <qpolygon.h>
00018 
00019 class QwtScaleMap;
00020 
00040 class QWT_EXPORT QwtRasterData
00041 {
00042 public:
00044     typedef QMap<double, QPolygonF> ContourLines;
00045 
00052     enum Attribute
00053     {
00069         WithoutGaps = 0x01
00070     };
00071 
00073     typedef QFlags<Attribute> Attributes;
00074 
00076     enum ConrecFlag
00077     {
00079         IgnoreAllVerticesOnLevel = 0x01,
00080 
00082         IgnoreOutOfRange = 0x02
00083     };
00084 
00086     typedef QFlags<ConrecFlag> ConrecFlags;
00087 
00088     QwtRasterData();
00089     virtual ~QwtRasterData();
00090 
00091     void setAttribute( Attribute, bool on = true );
00092     bool testAttribute( Attribute ) const;
00093 
00098     virtual QwtInterval interval( Qt::Axis ) const = 0;
00099 
00100     virtual QRectF pixelHint( const QRectF & ) const;
00101 
00102     virtual void initRaster( const QRectF &, const QSize& raster );
00103     virtual void discardRaster();
00104 
00110     virtual double value( double x, double y ) const = 0;
00111 
00112     virtual ContourLines contourLines( const QRectF &rect,
00113         const QSize &raster, const QList<double> &levels,
00114         ConrecFlags ) const;
00115 
00116     class Contour3DPoint;
00117     class ContourPlane;
00118 
00119 private:
00120     Q_DISABLE_COPY(QwtRasterData)
00121 
00122     class PrivateData;
00123     PrivateData *d_data;
00124 };
00125 
00126 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtRasterData::ConrecFlags )
00127 Q_DECLARE_OPERATORS_FOR_FLAGS( QwtRasterData::Attributes )
00128 
00129 #endif


plotjuggler
Author(s): Davide Faconti
autogenerated on Fri Sep 1 2017 02:41:56