blob: 4cc626ca9805c692ce449d8dfc3eeac5d07b1ce2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef QTGRAPHS_Q3DSURFACEWIDGETITEM_H
#define QTGRAPHS_Q3DSURFACEWIDGETITEM_H
#include <QtGraphs/qsurface3dseries.h>
#include <QtGraphs/qvalue3daxis.h>
#include <QtGraphsWidgets/q3dgraphswidgetitem.h>
QT_BEGIN_NAMESPACE
class QQuickGraphsSurface;
class Q3DSurfaceWidgetItemPrivate;
class Q_GRAPHSWIDGETS_EXPORT Q3DSurfaceWidgetItem : public Q3DGraphsWidgetItem
{
Q_OBJECT
Q_PROPERTY(QValue3DAxis *axisX READ axisX WRITE setAxisX NOTIFY axisXChanged)
Q_PROPERTY(QValue3DAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged)
Q_PROPERTY(QValue3DAxis *axisZ READ axisZ WRITE setAxisZ NOTIFY axisZChanged)
Q_PROPERTY(QSurface3DSeries *selectedSeries READ selectedSeries NOTIFY selectedSeriesChanged)
Q_PROPERTY(bool flipHorizontalGrid READ flipHorizontalGrid WRITE setFlipHorizontalGrid NOTIFY
flipHorizontalGridChanged)
public:
explicit Q3DSurfaceWidgetItem(QObject *parent = nullptr);
~Q3DSurfaceWidgetItem() override;
void addSeries(QSurface3DSeries *series);
void removeSeries(QSurface3DSeries *series);
QList<QSurface3DSeries *> seriesList() const;
// Axes
void setAxisX(QValue3DAxis *axis);
QValue3DAxis *axisX() const;
void setAxisY(QValue3DAxis *axis);
QValue3DAxis *axisY() const;
void setAxisZ(QValue3DAxis *axis);
QValue3DAxis *axisZ() const;
void addAxis(QValue3DAxis *axis);
void releaseAxis(QValue3DAxis *axis);
QList<QValue3DAxis *> axes() const;
QSurface3DSeries *selectedSeries() const;
void setFlipHorizontalGrid(bool flip);
bool flipHorizontalGrid() const;
Q_REVISION(6, 10)
QSharedPointer<QQuickItemGrabResult> renderSliceToImage(int index, int requestedIndex,
QtGraphs3D::SliceType sliceType);
protected:
bool event(QEvent *event) override;
Q_SIGNALS:
void axisXChanged(QValue3DAxis *axis);
void axisYChanged(QValue3DAxis *axis);
void axisZChanged(QValue3DAxis *axis);
void selectedSeriesChanged(QSurface3DSeries *series);
void flipHorizontalGridChanged(bool flip);
private:
Q_DECLARE_PRIVATE(Q3DSurfaceWidgetItem)
QQuickGraphsSurface *graphSurface();
const QQuickGraphsSurface *graphSurface() const;
};
QT_END_NAMESPACE
#endif
|