QWT API (中文) 7.3.0
Qt绘图库 - 中文API文档
载入中...
搜索中...
未找到
qwt3d_colormap_color.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
10#ifndef QWT3D_COLORMAP_COLOR_H
11#define QWT3D_COLORMAP_COLOR_H
12
13#include "qwt3d_global.h"
14#include "qwt3d_color.h"
15
16class QwtColorMap;
17class QString;
18
25enum Qwt3DColorSource
26{
27 ColorFromX,
28 ColorFromY,
29 ColorFromZ // default, preserves the existing behavior
30};
31
32
33
38class QWT3D_EXPORT Qwt3DColorMapColor : public Qwt3DColor
39{
40public:
41 explicit Qwt3DColorMapColor(const QString& presetName = QString("viridis"), unsigned size = 256);
42
43 Qwt3DColorMapColor(::QwtColorMap* colorMap, unsigned size = 256);
44
45 ~Qwt3DColorMapColor() override;
46
47 RGBA operator()(double x, double y, double z) const override;
48 ColorVector& createVector(ColorVector& vec) override;
49
50 void setColorMap(::QwtColorMap* map);
51 const ::QwtColorMap* colorMap() const;
52
53 void setInterval(double min, double max);
54 void reset(unsigned size = 256);
55 void setAlpha(double a);
56
59 void setSourceAxis(Qwt3DColorSource source);
61 Qwt3DColorSource sourceAxis() const;
62
63 // Returns the preset name passed to the constructor (empty if constructed from QwtColorMap*)
64 QString presetName() const;
65 // Returns the number of colors in the color vector
66 unsigned colorCount() const;
67 // Returns the alpha value (default 1.0)
68 double alpha() const;
69 // Returns true if a manual interval was set via setInterval()
70 bool useManualInterval() const;
71 // Returns the manual min value (only meaningful when useManualInterval() is true)
72 double manualMin() const;
73 // Returns the manual max value (only meaningful when useManualInterval() is true)
74 double manualMax() const;
75
76private:
77 void rebuildColorVector(unsigned size);
78
79 ::QwtColorMap* m_colorMap;
80 ColorVector m_colors;
81 double m_manualMin;
82 double m_manualMax;
83 bool m_useManualInterval;
84 double m_alpha;
85 QString m_presetName;
86 Qwt3DColorSource m_source;
87};
88
89
90#endif
Adapts a QwtColorMap (from qwt::core) for use as a Qwt3DColor.
Definition qwt3d_colormap_color.h:39
Abstract base class for color functors
Definition qwt3d_color.h:25
QwtColorMap is used to map values into colors.
Definition qwt_colormap.h:33
Red-Green-Blue-Alpha value
Definition qwt3d_types.h:395