kDB: Knowledge DataBase
Loading...
Searching...
No Matches
PointCloudMaterial.h
1#pragma once
2
3#include <Qt3DRender/QMaterial>
4
5namespace knowVis
6{
7 class PointCloudMaterial : public Qt3DRender::QMaterial
8 {
9 Q_OBJECT
10 public:
11 enum class ColorMode
12 {
13 Flat = 0,
14 XGradient = 1,
15 YGradient = 2,
16 ZGradient = 3,
17 Data = 4
18 };
19 Q_ENUM(ColorMode)
20 public:
21 Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged)
22 Q_PROPERTY(QColor secondaryColor READ secondaryColor WRITE setSecondaryColor NOTIFY
23 secondaryColorChanged)
24 Q_PROPERTY(qreal gradientMin READ gradientMin WRITE setGradientMin NOTIFY gradientMinChanged)
25 Q_PROPERTY(qreal gradientMax READ gradientMax WRITE setGradientMax NOTIFY gradientMaxChanged)
26 Q_PROPERTY(ColorMode colorMode READ colorMode WRITE setColorMode NOTIFY colorModeChanged)
27 Q_PROPERTY(qreal pointSize READ pointSize WRITE setPointSize NOTIFY pointSizeChanged)
28 public:
29 PointCloudMaterial(Qt3DCore::QNode* parent = nullptr);
31 QColor color() const;
32 void setColor(const QColor& _color);
33 QColor secondaryColor() const;
34 void setSecondaryColor(const QColor& _color);
35 qreal gradientMin() const;
36 void setGradientMin(qreal _min);
37 qreal gradientMax() const;
38 void setGradientMax(qreal _max);
39 ColorMode colorMode() const;
40 void setColorMode(ColorMode mode);
41 qreal pointSize() const;
42 void setPointSize(qreal _pointSize);
43 signals:
44 void colorChanged();
45 void secondaryColorChanged();
46 void gradientMinChanged();
47 void gradientMaxChanged();
48 void colorModeChanged();
49 void pointSizeChanged();
50 private:
51 struct Private;
52 Private* const d;
53 };
54} // namespace knowVis
55
56Q_DECLARE_METATYPE(knowVis::PointCloudMaterial*)
Definition PointCloudMaterial.h:8
Definition PointCloudMaterial.cpp:16