adopt for Qt6
This commit is contained in:
@@ -9,10 +9,18 @@
|
||||
|
||||
Scatter3D::Scatter3D(QWidget * parent): QWidget{parent} {
|
||||
curGraphic = 0;
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
canvas = new QtDataVisualization::Q3DScatter();
|
||||
#else
|
||||
canvas = new Q3DScatter();
|
||||
#endif
|
||||
canvas->setFlag(Qt::FramelessWindowHint);
|
||||
canvas->axisZ()->setReversed(true);
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
canvas->setShadowQuality(QtDataVisualization::QAbstract3DGraph::ShadowQualityNone);
|
||||
#else
|
||||
canvas->setShadowQuality(QAbstract3DGraph::ShadowQualityNone);
|
||||
#endif
|
||||
container = QWidget::createWindowContainer(canvas);
|
||||
setLayout(new QVBoxLayout(this));
|
||||
layout()->setContentsMargins(0, 0, 0, 0);
|
||||
@@ -98,8 +106,13 @@ void Scatter3D::setGraphicMeshSmooth(bool smooth, int index) {
|
||||
|
||||
void Scatter3D::addGraphic(const QColor & color, float pointSize, Mesh mesh, bool meshSmooth) {
|
||||
Scatter3DGraphic sg;
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
sg.data = new QtDataVisualization::QScatterDataProxy();
|
||||
sg.series = new QtDataVisualization::QScatter3DSeries(sg.data);
|
||||
#else
|
||||
sg.data = new QScatterDataProxy();
|
||||
sg.series = new QScatter3DSeries(sg.data);
|
||||
#endif
|
||||
sg.series->setItemSize(pointSize);
|
||||
sg.series->setBaseColor(color);
|
||||
sg.series->setMesh(mesh);
|
||||
|
||||
@@ -25,18 +25,27 @@
|
||||
#include <QAbstract3DSeries>
|
||||
#include <QWidget>
|
||||
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
namespace QtDataVisualization {
|
||||
#endif
|
||||
class Q3DScatter;
|
||||
class QScatterDataProxy;
|
||||
class QScatter3DSeries;
|
||||
class QScatterDataItem;
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
} // namespace QtDataVisualization
|
||||
#endif
|
||||
|
||||
class QAD_GRAPHIC3D_EXPORT Scatter3D: public QWidget {
|
||||
Q_OBJECT
|
||||
|
||||
#if QT_VERSION_MAJOR == 6
|
||||
using Mesh = QAbstract3DSeries::Mesh;
|
||||
using DataArray = QVector<QScatterDataItem>;
|
||||
#else
|
||||
using Mesh = QtDataVisualization::QAbstract3DSeries::Mesh;
|
||||
using DataArray = QVector<QtDataVisualization::QScatterDataItem>;
|
||||
#endif
|
||||
|
||||
Q_PROPERTY(int currentGraphic READ currentGraphic WRITE setCurrentGraphic)
|
||||
Q_PROPERTY(int graphicsCount READ graphicsCount WRITE setGraphicsCount)
|
||||
@@ -86,12 +95,17 @@ public slots:
|
||||
|
||||
private:
|
||||
struct Scatter3DGraphic {
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
QtDataVisualization::QScatter3DSeries * series;
|
||||
QtDataVisualization::QScatterDataProxy * data;
|
||||
#else
|
||||
QScatter3DSeries * series;
|
||||
QScatterDataProxy * data;
|
||||
#endif
|
||||
};
|
||||
|
||||
QWidget * container;
|
||||
QtDataVisualization::Q3DScatter * canvas;
|
||||
Q3DScatter * canvas;
|
||||
QVector<Scatter3DGraphic> graphics;
|
||||
|
||||
int curGraphic;
|
||||
|
||||
@@ -193,11 +193,13 @@ inline QVector<T> PI2QVector(const PIVector<T> & v) {
|
||||
ret << v[i];
|
||||
return ret;
|
||||
}
|
||||
#if QT_VERSION_MAJOR == 5
|
||||
template<typename T>
|
||||
inline PIVector<T> Q2PIVector(const QVector<T> & v) {
|
||||
if (v.isEmpty()) return PIVector<T>();
|
||||
return PIVector<T>(v.constData(), (size_t)v.size());
|
||||
}
|
||||
#endif
|
||||
template<typename T>
|
||||
inline PIVector<T> Q2PIVector(const QList<T> & v) {
|
||||
if (v.isEmpty()) return PIVector<T>();
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <QFormLayout>
|
||||
#include <QGroupBox>
|
||||
#include <QMetaEnum>
|
||||
#include <QActionGroup>
|
||||
|
||||
using Attribute = PIValueTree::Attribute;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user