Loading...
Searching...
No Matches
qwt_raster_data.h
/******************************************************************************
* Qwt Widget Library
* Copyright (C) 1997 Josef Wilgen
* Copyright (C) 2002 Uwe Rathmann
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the Qwt License, Version 1.0
*****************************************************************************/
#ifndef QWT_RASTER_DATA_H
#define QWT_RASTER_DATA_H
#include "qwt_global.h"
#include <qnamespace.h>
class QwtInterval;
class QPolygonF;
class QRectF;
class QSize;
template< typename T > class QList;
template< class Key, class T > class QMap;
class QWT_EXPORT QwtRasterData
{
public:
typedef QMap< double, QPolygonF > ContourLines;
enum Attribute
{
WithoutGaps = 0x01
};
Q_DECLARE_FLAGS( Attributes, Attribute )
enum ConrecFlag
{
IgnoreAllVerticesOnLevel = 0x01,
IgnoreOutOfRange = 0x02
};
Q_DECLARE_FLAGS( ConrecFlags, ConrecFlag )
QwtRasterData();
virtual ~QwtRasterData();
void setAttribute( Attribute, bool on = true );
bool testAttribute( Attribute ) const;
virtual QwtInterval interval( Qt::Axis ) const = 0;
virtual QRectF pixelHint( const QRectF& ) const;
virtual void initRaster( const QRectF&, const QSize& raster );
virtual void discardRaster();
virtual double value( double x, double y ) const = 0;
virtual ContourLines contourLines( const QRectF& rect,
const QSize& raster, const QList< double >& levels,
ConrecFlags ) const;
class Contour3DPoint;
class ContourPlane;
private:
Q_DISABLE_COPY(QwtRasterData)
class PrivateData;
PrivateData* m_data;
};
Q_DECLARE_OPERATORS_FOR_FLAGS( QwtRasterData::ConrecFlags )
Q_DECLARE_OPERATORS_FOR_FLAGS( QwtRasterData::Attributes )
#endif
QList
Definition qwt_abstract_legend.h:17
QMap
Definition qwt_compass.h:19
QwtInterval
A class representing an interval.
Definition qwt_interval.h:23
QwtRasterData
QwtRasterData defines an interface to any type of raster data.
Definition qwt_raster_data.h:43
QwtRasterData::ContourLines
QMap< double, QPolygonF > ContourLines
Contour lines.
Definition qwt_raster_data.h:46
QwtRasterData::ConrecFlags
QFlags< ConrecFlag > ConrecFlags
Definition qwt_raster_data.h:86
QwtRasterData::value
virtual double value(double x, double y) const =0
QwtRasterData::Attributes
QFlags< Attribute > Attributes
Definition qwt_raster_data.h:74
QwtRasterData::Attribute
Attribute
Raster data attributes.
Definition qwt_raster_data.h:55
QwtRasterData::interval
virtual QwtInterval interval(Qt::Axis) const =0
QwtRasterData::ConrecFlag
ConrecFlag
Flags to modify the contour algorithm.
Definition qwt_raster_data.h:78