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