QWT API (中文) 7.0.1
Qt绘图库 - 中文API文档
载入中...
搜索中...
未找到
qwt_raster_data.h
1/******************************************************************************
2 * Qwt Widget Library
3 * Copyright (C) 1997 Josef Wilgen
4 * Copyright (C) 2002 Uwe Rathmann
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the Qwt License, Version 1.0
8 *
9 * Modified by ChenZongYan in 2024 <czy.t@163.com>
10 * Summary of major modifications (see ChangeLog.md for full history):
11 * 1. CMake build system & C++11 throughout.
12 * 2. Core panner/ zoomer refactored:
13 * - QwtPanner → QwtCachePanner (pixmap-cache version)
14 * - New real-time QwtPlotPanner derived from QwtPicker.
15 * 3. Zoomer supports multi-axis.
16 * 4. Parasite-plot framework:
17 * - QwtFigure, QwtPlotParasiteLayout, QwtPlotTransparentCanvas,
18 * - QwtPlotScaleEventDispatcher, built-in pan/zoom on axis.
19 * 5. New picker: QwtPlotSeriesDataPicker (works with date axis).
20 * 6. Raster & color-map extensions:
21 * - QwtGridRasterData (2-D table + interpolation)
22 * - QwtLinearColorMap::stopColors(), stopPos() API rename.
23 * 7. Bar-chart: expose pen/brush control.
24 * 8. Amalgamated build: single QwtPlot.h / QwtPlot.cpp pair in src-amalgamate.
25 *****************************************************************************/
26
27#ifndef QWT_RASTER_DATA_H
28#define QWT_RASTER_DATA_H
29
30#include "qwt_global.h"
31#include <qnamespace.h>
32
33class QwtInterval;
34class QPolygonF;
35class QRectF;
36class QSize;
37template< typename T >
38class QList;
39template< class Key, class T >
40class QMap;
41
78class QWT_EXPORT QwtRasterData
79{
80public:
83
99 {
130 WithoutGaps = 0x01
131 };
132
133 Q_DECLARE_FLAGS(Attributes, Attribute)
134
135
145 {
147 IgnoreAllVerticesOnLevel = 0x01,
148
150 IgnoreOutOfRange = 0x02
151 };
152
153 Q_DECLARE_FLAGS(ConrecFlags, ConrecFlag)
154
155
158 virtual ~QwtRasterData();
159
161 void setAttribute(Attribute, bool on = true);
163 bool testAttribute(Attribute) const;
164
165// Get the bounding interval for an axis
166 virtual QwtInterval interval(Qt::Axis) const = 0;
167
169 virtual QRectF pixelHint(const QRectF&) const;
170
172 virtual void initRaster(const QRectF&, const QSize& raster);
174 virtual void discardRaster();
175
176 // Get the value at a raster position
177 virtual double value(double x, double y) const = 0;
178
180 virtual ContourLines contourLines(const QRectF& rect, const QSize& raster, const QList< double >& levels, ConrecFlags) const;
181
182 class Contour3DPoint;
183 class ContourPlane;
184
185private:
186 Q_DISABLE_COPY(QwtRasterData)
187
188 class PrivateData;
189 PrivateData* m_data;
190};
191
192Q_DECLARE_OPERATORS_FOR_FLAGS(QwtRasterData::ConrecFlags)
193Q_DECLARE_OPERATORS_FOR_FLAGS(QwtRasterData::Attributes)
194
195#endif
Definition qwt_dyngrid_layout.h:33
Definition qwt_compass.h:36
表示区间的类
Definition qwt_interval.h:45
QwtRasterData 定义了任何类型栅格数据的接口
Definition qwt_raster_data.h:79
Attribute
栅格数据属性
Definition qwt_raster_data.h:99
ConrecFlag
修改等高线算法的标志
Definition qwt_raster_data.h:145