diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-02-17 16:18:27 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-02-18 12:53:13 +0200 |
commit | d91e065526fe084374b206b6e7c9f0d628abb93d (patch) | |
tree | f4f9df5a31865e25ee97517c9b732eada1d2c8fe /src/datavisualization/engine | |
parent | 7eb24d68115619d8d78e6a427d5c723e5ffc15a5 (diff) |
Clean up public API and includes usage
Change-Id: I20ba0ffafa6bbe22d624a15fe3046ef2e33ab6d7
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/engine')
32 files changed, 67 insertions, 751 deletions
diff --git a/src/datavisualization/engine/abstract3dcontroller.cpp b/src/datavisualization/engine/abstract3dcontroller.cpp index 4989ddb5..d2b59c58 100644 --- a/src/datavisualization/engine/abstract3dcontroller.cpp +++ b/src/datavisualization/engine/abstract3dcontroller.cpp @@ -32,8 +32,7 @@ #include "q3dtheme_p.h" #include "q3dscene_p.h" #include "q3dscene.h" - -#include <QThread> +#include <QtCore/QThread> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/abstract3dcontroller_p.h b/src/datavisualization/engine/abstract3dcontroller_p.h index cac46ddf..f9b6588d 100644 --- a/src/datavisualization/engine/abstract3dcontroller_p.h +++ b/src/datavisualization/engine/abstract3dcontroller_p.h @@ -35,10 +35,7 @@ #include "qabstract3dinputhandler.h" #include "qabstractdataproxy.h" #include "q3dscene_p.h" -#include "q3dbox.h" - -#include <QObject> -#include <QLinearGradient> +#include <QtGui/QLinearGradient> class QFont; diff --git a/src/datavisualization/engine/abstract3drenderer_p.h b/src/datavisualization/engine/abstract3drenderer_p.h index a381adf8..4f5b644e 100644 --- a/src/datavisualization/engine/abstract3drenderer_p.h +++ b/src/datavisualization/engine/abstract3drenderer_p.h @@ -33,7 +33,7 @@ #include <QtGui/QOpenGLFunctions> #ifdef DISPLAY_RENDER_SPEED -#include <QTime> +#include <QtCore/QTime> #endif #include "datavisualizationglobal_p.h" @@ -133,7 +133,6 @@ protected: AxisRenderCache m_axisCacheY; AxisRenderCache m_axisCacheZ; TextureHelper *m_textureHelper; - Q3DBox m_boundingBox; Q3DScene *m_cachedScene; bool m_selectionDirty; diff --git a/src/datavisualization/engine/axisrendercache.cpp b/src/datavisualization/engine/axisrendercache.cpp index c1c2d5bd..a107dd23 100644 --- a/src/datavisualization/engine/axisrendercache.cpp +++ b/src/datavisualization/engine/axisrendercache.cpp @@ -17,8 +17,9 @@ ****************************************************************************/ #include "axisrendercache_p.h" -#include "qmath.h" -#include <QFontMetrics> + +#include <QtCore/qmath.h> +#include <QtGui/QFontMetrics> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/bars3dcontroller.cpp b/src/datavisualization/engine/bars3dcontroller.cpp index c84c445b..442601eb 100644 --- a/src/datavisualization/engine/bars3dcontroller.cpp +++ b/src/datavisualization/engine/bars3dcontroller.cpp @@ -27,8 +27,8 @@ #include "thememanager_p.h" #include "q3dtheme_p.h" -#include <QMatrix4x4> -#include <qmath.h> +#include <QtGui/QMatrix4x4> +#include <QtCore/qmath.h> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/bars3drenderer.cpp b/src/datavisualization/engine/bars3drenderer.cpp index bb702119..3ec23476 100644 --- a/src/datavisualization/engine/bars3drenderer.cpp +++ b/src/datavisualization/engine/bars3drenderer.cpp @@ -28,11 +28,10 @@ #include "q3dlight.h" #include "qbar3dseries_p.h" -#include <QMatrix4x4> -#include <QMouseEvent> -#include <QThread> -#include <qmath.h> -#include <QDebug> +#include <QtGui/QMatrix4x4> +#include <QtGui/QMouseEvent> +#include <QtCore/QThread> +#include <QtCore/qmath.h> // You can verify that depth buffer drawing works correctly by uncommenting this. // You should see the scene from where the light is diff --git a/src/datavisualization/engine/drawer.cpp b/src/datavisualization/engine/drawer.cpp index dd82eadc..b70d7c0e 100644 --- a/src/datavisualization/engine/drawer.cpp +++ b/src/datavisualization/engine/drawer.cpp @@ -24,8 +24,9 @@ #include "q3dcamera.h" #include "utils_p.h" #include "texturehelper_p.h" -#include <QMatrix4x4> -#include <qmath.h> + +#include <QtGui/QMatrix4x4> +#include <QtCore/qmath.h> // Resources need to be explicitly initialized when building as static library class StaticLibInitializer diff --git a/src/datavisualization/engine/drawer_p.h b/src/datavisualization/engine/drawer_p.h index 35a0a7ff..54c8111e 100644 --- a/src/datavisualization/engine/drawer_p.h +++ b/src/datavisualization/engine/drawer_p.h @@ -34,7 +34,6 @@ #include "q3dtheme.h" #include "labelitem_p.h" #include "abstractrenderitem_p.h" -#include <QFont> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/engine.pri b/src/datavisualization/engine/engine.pri index b686397c..64a0f4dd 100644 --- a/src/datavisualization/engine/engine.pri +++ b/src/datavisualization/engine/engine.pri @@ -23,7 +23,6 @@ HEADERS += $$PWD/qabstract3dgraph_p.h \ $$PWD/q3dscene.h \ $$PWD/q3dlight.h \ $$PWD/q3dlight_p.h \ - $$PWD/q3dbox.h \ $$PWD/q3dobject.h \ $$PWD/q3dobject_p.h \ $$PWD/q3dscene_p.h \ @@ -47,7 +46,6 @@ SOURCES += $$PWD/qabstract3dgraph.cpp \ $$PWD/selectionpointer.cpp \ $$PWD/q3dcamera.cpp \ $$PWD/q3dlight.cpp \ - $$PWD/q3dbox.cpp \ $$PWD/q3dobject.cpp \ $$PWD/q3dscene.cpp \ $$PWD/surfaceseriesrendercache.cpp diff --git a/src/datavisualization/engine/q3dbars.h b/src/datavisualization/engine/q3dbars.h index 97e7c067..7f9c981f 100644 --- a/src/datavisualization/engine/q3dbars.h +++ b/src/datavisualization/engine/q3dbars.h @@ -20,16 +20,13 @@ #define Q3DBARS_H #include <QtDataVisualization/qabstract3dgraph.h> -#include <QFont> -#include <QLinearGradient> +#include <QtDataVisualization/qvalue3daxis.h> +#include <QtDataVisualization/qcategory3daxis.h> +#include <QtDataVisualization/qbar3dseries.h> QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Q3DBarsPrivate; -class QAbstract3DAxis; -class QCategory3DAxis; -class QValue3DAxis; -class QBar3DSeries; class QT_DATAVISUALIZATION_EXPORT Q3DBars : public QAbstract3DGraph { @@ -82,7 +79,7 @@ public: signals: void multiSeriesUniformChanged(bool uniform); void barThicknessChanged(float thicknessRatio); - void barSpacingChanged(QSizeF spacing); + void barSpacingChanged(const QSizeF &spacing); void barSpacingRelativeChanged(bool relative); void rowAxisChanged(QCategory3DAxis *axis); void columnAxisChanged(QCategory3DAxis *axis); diff --git a/src/datavisualization/engine/q3dbox.cpp b/src/datavisualization/engine/q3dbox.cpp deleted file mode 100644 index c5caea75..00000000 --- a/src/datavisualization/engine/q3dbox.cpp +++ /dev/null @@ -1,485 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2014 Digia Plc -** All rights reserved. -** For any questions to Digia, please use contact form at http://qt.digia.com -** -** This file is part of the QtDataVisualization module. -** -** Licensees holding valid Qt Enterprise licenses may use this file in -** accordance with the Qt Enterprise License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. -** -** If you have questions regarding the use of this file, please use -** contact form at http://qt.digia.com -** -****************************************************************************/ - -#include "datavisualizationglobal_p.h" -#include "q3dbox.h" -#include <QtCore/QList> - -QT_BEGIN_NAMESPACE_DATAVISUALIZATION - -/*! - \class Q3DBox - \inmodule QtDataVisualization - \brief The Q3DBox class represents an axis-aligned box in 3D space. - \since Qt Data Visualization 1.0 - - Q3DBox can be used to represent the bounding box of objects in a 3D - scene so that they can be easily culled if they are out of view. - - The sides of the box are always aligned with the x, y, and z axes of - the world co-ordinate system. Transforming a box with transformed() - will result in the smallest axis-aligned bounding box that contains - the transformed box. - - Boxes may be null, finite, or infinite. A null box does not occupy - any space and does not intersect with any other box. A finite - box consists of a minimum() and maximum() extent in 3D space. - An infinite box encompasses all points in 3D space. - - The extents of a finite box are also included within the box. - A box with minimum() and maximum() set to the same value - contains a single point. -*/ - -/*! - \fn Q3DBox::Q3DBox() - - Constructs a null box in 3D space. - - \sa isNull() -*/ - -/*! - \fn Q3DBox::Q3DBox(const QVector3D& corner1, const QVector3D& corner2) - - Constructs a finite box in 3D space from \a corner1 to \a corner2. - The minimum() and maximum() co-ordinates of the new box are set - to the minimum and maximum x, y, and z values from \a corner1 and - \a corner2. The \a corner1 and \a corner2 values can be any two - opposite corners that define the box. - - \sa isFinite(), minimum(), maximum() -*/ - -/*! - \fn bool Q3DBox::isNull() const - - Returns true if this box is null; false otherwise. - - \sa isFinite(), isInfinite(), setToNull() -*/ - -/*! - \fn bool Q3DBox::isFinite() const - - Returns true if this box is finite in size; false otherwise. - - \sa isNull(), isInfinite(), setExtents() -*/ - -/*! - \fn bool Q3DBox::isInfinite() const - - Returns true if this box is infinite in size; false otherwise. - - \sa isNull(), isFinite(), setToInfinite() -*/ - -/*! - \fn QVector3D Q3DBox::minimum() const - - Returns the minimum corner of this box. - - \sa maximum(), setExtents() -*/ - -/*! - \fn QVector3D Q3DBox::maximum() const - - Returns the maximum corner of this box. - - \sa minimum(), setExtents() -*/ - -/*! - \fn void Q3DBox::setExtents(const QVector3D& corner1, const QVector3D& corner2) - - Sets the extents of this box to a finite region from \a corner1 to - \a corner2. The minimum() and maximum() co-ordinates of the box are - set to the minimum and maximum x, y, and z values from \a corner1 and - \a corner2. The \a corner1 and \a corner2 values can be any two - opposite corners that define the box. - - \sa minimum(), maximum() -*/ - -/*! - \fn void Q3DBox::setToNull() - - Sets this box to null. - - \sa isNull() -*/ - -/*! - \fn void Q3DBox::setToInfinite() - - Sets this box to be infinite in size. - - \sa isInfinite() -*/ - -/*! - \fn QVector3D Q3DBox::size() const - - Returns the finite size of this box. If this box is null or - infinite, the returned value will be zero. - - \sa center(), isNull(), isInfinite() -*/ - -/*! - \fn QVector3D Q3DBox::center() const - - Returns the finite center of this box. If this box is null - or infinite, the returned value will be zero. - - \sa size(), isNull(), isInfinite() -*/ - -/*! - \fn bool Q3DBox::contains(const QVector3D& point) const - - Returns true if this box contains \a point; false otherwise. - Null boxes do not contain any points and infinite boxes contain - all points. - - Containment is not a strict test: the point is contained if it - lies on one of the faces of the box. - - \sa intersects() -*/ - -/*! - \fn bool Q3DBox::contains(const Q3DBox& box) const - - Returns true if this box completely contains \a box. If this box - is null, then it will not contain \a box. If this box is infinite, - and \a box is not null, then \a box will be contained within this box. - If \a box is infinite, then this box must also be infinite to contain it. - - \sa intersects() -*/ - -/*! - Returns true if \a box intersects this box; false otherwise. - - \sa intersect(), intersected(), contains() -*/ -bool Q3DBox::intersects(const Q3DBox& box) const -{ - if (boxtype == Null) - return false; - else if (boxtype == Infinite) - return box.boxtype != Null; - else if (box.boxtype == Null) - return false; - else if (box.boxtype == Infinite) - return true; - - if (maxcorner.x() < box.mincorner.x()) - return false; - if (mincorner.x() > box.maxcorner.x()) - return false; - - if (maxcorner.y() < box.mincorner.y()) - return false; - if (mincorner.y() > box.maxcorner.y()) - return false; - - if (maxcorner.z() < box.mincorner.z()) - return false; - if (mincorner.z() > box.maxcorner.z()) - return false; - - return true; -} - -/*! - Intersects this box with \a box. - - \sa intersected(), intersects(), unite() -*/ -void Q3DBox::intersect(const Q3DBox& box) -{ - // Handle the simple cases first. - if (boxtype == Null) { - // Null intersected with anything is null. - return; - } else if (boxtype == Infinite) { - // Infinity intersected with a box is that box. - *this = box; - return; - } else if (box.boxtype == Null) { - // Anything intersected with null is null. - setToNull(); - return; - } else if (box.boxtype == Infinite) { - // Box intersected with infinity is the box. - return; - } - - // Intersect two finite boxes. - QVector3D min1 = mincorner; - QVector3D max1 = maxcorner; - QVector3D min2 = box.mincorner; - QVector3D max2 = box.maxcorner; - if (min2.x() > min1.x()) - min1.setX(min2.x()); - if (min2.y() > min1.y()) - min1.setY(min2.y()); - if (min2.z() > min1.z()) - min1.setZ(min2.z()); - if (max2.x() < max1.x()) - max1.setX(max2.x()); - if (max2.y() < max1.y()) - max1.setY(max2.y()); - if (max2.z() < max1.z()) - max1.setZ(max2.z()); - if (min1.x() > max1.x() || min1.y() > max1.y() || min1.z() > max1.z()) { - setToNull(); - } else { - mincorner = min1; - maxcorner = max1; - } -} - -/*! - Returns a new box which is the intersection of this box with \a box. - - \sa intersect(), intersects(), united() -*/ -Q3DBox Q3DBox::intersected(const Q3DBox& box) const -{ - Q3DBox result(*this); - result.intersect(box); - return result; -} - -/*! - Unites this box with \a point by expanding it to encompass \a point. - If \a point is already contained within this box, then this box - will be unchanged. - - \sa united(), intersect() -*/ -void Q3DBox::unite(const QVector3D& point) -{ - if (boxtype == Finite) { - if (point.x() < mincorner.x()) - mincorner.setX(point.x()); - else if (point.x() > maxcorner.x()) - maxcorner.setX(point.x()); - if (point.y() < mincorner.y()) - mincorner.setY(point.y()); - else if (point.y() > maxcorner.y()) - maxcorner.setY(point.y()); - if (point.z() < mincorner.z()) - mincorner.setZ(point.z()); - else if (point.z() > maxcorner.z()) - maxcorner.setZ(point.z()); - } else if (boxtype == Null) { - boxtype = Finite; - mincorner = point; - maxcorner = point; - } -} - -/*! - Unites this box with \a box by expanding this box to encompass the - region defined by \a box. If \a box is already contained within - this box, then this box will be unchanged. - - \sa united(), intersect() -*/ -void Q3DBox::unite(const Q3DBox& box) -{ - if (box.boxtype == Finite) { - unite(box.minimum()); - unite(box.maximum()); - } else if (box.boxtype == Infinite) { - setToInfinite(); - } -} - -/*! - Returns a new box which unites this box with \a point. The returned - value will be the smallest box that contains both this box and \a point. - - \sa unite(), intersected() -*/ -Q3DBox Q3DBox::united(const QVector3D& point) const -{ - if (boxtype == Finite) { - Q3DBox result(*this); - result.unite(point); - return result; - } else if (boxtype == Null) { - return Q3DBox(point, point); - } else { - return *this; - } -} - -/*! - Returns a new box which unites this box with \a box. The returned value - will be the smallest box that contains both this box and \a box. - - \sa unite(), intersected() -*/ -Q3DBox Q3DBox::united(const Q3DBox& box) const -{ - if (boxtype == Finite) { - Q3DBox result(*this); - result.unite(box); - return result; - } else if (boxtype == Null) { - return box; - } else { - return *this; - } -} - -/*! - Transforms this box according to \a matrix. Each of the 8 box - corners are transformed and then a new box that encompasses all - of the transformed corner values is created. - - \sa transformed() -*/ -void Q3DBox::transform(const QMatrix4x4& matrix) -{ - *this = transformed(matrix); -} - -/*! - Returns this box transformed by \a matrix. Each of the 8 box - corners are transformed and then a new box that encompasses all - of the transformed corner values is returned. - - \sa transform() -*/ -Q3DBox Q3DBox::transformed(const QMatrix4x4& matrix) const -{ - if (boxtype != Finite) - return *this; - Q3DBox result; - result.unite(matrix * mincorner); - result.unite(matrix * QVector3D(mincorner.x(), mincorner.y(), maxcorner.z())); - result.unite(matrix * QVector3D(mincorner.x(), maxcorner.y(), maxcorner.z())); - result.unite(matrix * QVector3D(mincorner.x(), maxcorner.y(), mincorner.z())); - result.unite(matrix * QVector3D(maxcorner.x(), mincorner.y(), mincorner.z())); - result.unite(matrix * QVector3D(maxcorner.x(), maxcorner.y(), mincorner.z())); - result.unite(matrix * QVector3D(maxcorner.x(), mincorner.y(), maxcorner.z())); - result.unite(matrix * maxcorner); - return result; -} - -/*! - \fn bool Q3DBox::operator==(const Q3DBox& box) const - - Returns true if this box is identical to \a box. -*/ - -/*! - \fn bool Q3DBox::operator!=(const Q3DBox& box) const - - Returns true if this box is not identical to \a box. -*/ - -/*! - \fn bool qFuzzyCompare(const Q3DBox& box1, const Q3DBox& box2) - \relates Q3DBox - - Returns true if \a box1 and \a box2 are almost equal; false otherwise. -*/ - -#ifndef QT_NO_DEBUG_STREAM - -/*! - \fn operator<<(QDebug dbg, const Q3DBox &box) - \internal - */ -QDebug operator<<(QDebug dbg, const Q3DBox &box) -{ - if (box.isFinite()) { - dbg.nospace() << "Q3DBox((" - << box.minimum().x() << ", " << box.minimum().y() << ", " - << box.minimum().z() << ") - (" - << box.maximum().x() << ", " << box.maximum().y() << ", " - << box.maximum().z() << "))"; - return dbg.space(); - } else if (box.isNull()) { - dbg << "Q3DBox(null)"; - return dbg; - } else { - dbg << "Q3DBox(infinite)"; - return dbg; - } -} - -#endif - -#ifndef QT_NO_DATASTREAM - -/*! - \relates Q3DBox - - Writes the given \a box to the given \a stream and returns a - reference to the stream. -*/ -QDataStream &operator<<(QDataStream &stream, const Q3DBox &box) -{ - if (box.isNull()) { - stream << int(0); - } else if (box.isInfinite()) { - stream << int(2); - } else { - stream << int(1); - stream << box.minimum(); - stream << box.maximum(); - } - return stream; -} - -/*! - \relates Q3DBox - - Reads a 3D box from the given \a stream into the given \a box - and returns a reference to the stream. -*/ -QDataStream &operator>>(QDataStream &stream, Q3DBox &box) -{ - int type; - stream >> type; - if (type == 1) { - QVector3D minimum, maximum; - stream >> minimum; - stream >> maximum; - box = Q3DBox(minimum, maximum); - } else if (type == 2) { - box.setToInfinite(); - } else { - box.setToNull(); - } - return stream; -} - -#endif - -QT_END_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/q3dbox.h b/src/datavisualization/engine/q3dbox.h deleted file mode 100644 index 6dbaefa1..00000000 --- a/src/datavisualization/engine/q3dbox.h +++ /dev/null @@ -1,158 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2014 Digia Plc -** All rights reserved. -** For any questions to Digia, please use contact form at http://qt.digia.com -** -** This file is part of the QtDataVisualization module. -** -** Licensees holding valid Qt Enterprise licenses may use this file in -** accordance with the Qt Enterprise License Agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and Digia. -** -** If you have questions regarding the use of this file, please use -** contact form at http://qt.digia.com -** -****************************************************************************/ - -#ifndef Q3DBOX_H -#define Q3DBOX_H - -#include <QtDataVisualization/qdatavisualizationglobal.h> -#include <QtGui/QMatrix4x4> -#include <QtGui/QVector3D> - -QT_BEGIN_NAMESPACE_DATAVISUALIZATION - -class Q3DBox; // Needed to circumvent an issue with qdoc. If this line is removed, make docs will not work for this. - -class QT_DATAVISUALIZATION_EXPORT Q3DBox -{ -public: - inline Q3DBox() : boxtype(Null), mincorner(0, 0, 0), maxcorner(0, 0, 0) {} - inline Q3DBox(const QVector3D& corner1, const QVector3D& corner2): boxtype(Finite), - mincorner(qMin(corner1.x(), corner2.x()), - qMin(corner1.y(), corner2.y()), - qMin(corner1.z(), corner2.z())), - maxcorner(qMax(corner1.x(), corner2.x()), - qMax(corner1.y(), corner2.y()), - qMax(corner1.z(), corner2.z())) {} - - inline bool isNull() const { return (boxtype == Null); } - inline bool isFinite() const { return (boxtype == Finite); } - inline bool isInfinite() const { return (boxtype == Infinite); } - - inline QVector3D minimum() const { return mincorner; } - inline QVector3D maximum() const { return maxcorner; } - inline void setExtents(const QVector3D& corner1, const QVector3D& corner2) - { - boxtype = Finite; - mincorner = QVector3D(qMin(corner1.x(), corner2.x()), - qMin(corner1.y(), corner2.y()), - qMin(corner1.z(), corner2.z())); - maxcorner = QVector3D(qMax(corner1.x(), corner2.x()), - qMax(corner1.y(), corner2.y()), - qMax(corner1.z(), corner2.z())); - } - - inline void setToNull() - { - boxtype = Null; - mincorner = QVector3D(0, 0, 0); - maxcorner = QVector3D(0, 0, 0); - } - - inline void setToInfinite() - { - boxtype = Infinite; - mincorner = QVector3D(0, 0, 0); - maxcorner = QVector3D(0, 0, 0); - } - - inline QVector3D size() const { return maxcorner - mincorner; } - inline QVector3D center() const { return (mincorner + maxcorner) * 0.5f; } - - inline bool contains(const QVector3D& point) const - { - if (boxtype == Finite) { - return (point.x() >= mincorner.x() && point.x() <= maxcorner.x() && - point.y() >= mincorner.y() && point.y() <= maxcorner.y() && - point.z() >= mincorner.z() && point.z() <= maxcorner.z()); - } else if (boxtype == Infinite) { - return true; - } else { - return false; - } - } - - inline bool contains(const Q3DBox& box) const - { - if (box.boxtype == Finite) - return contains(box.mincorner) && contains(box.maxcorner); - else if (box.boxtype == Infinite) - return (boxtype == Infinite); - else - return false; - } - - bool intersects(const Q3DBox& box) const; - void intersect(const Q3DBox& box); - Q3DBox intersected(const Q3DBox& box) const; - - void unite(const QVector3D& point); - void unite(const Q3DBox& box); - - Q3DBox united(const QVector3D& point) const; - Q3DBox united(const Q3DBox& box) const; - - void transform(const QMatrix4x4& matrix); - Q3DBox transformed(const QMatrix4x4& matrix) const; - - inline bool operator==(const Q3DBox& box) const - { - return (boxtype == box.boxtype && - mincorner == box.mincorner && - maxcorner == box.maxcorner); - } - - inline bool operator!=(const Q3DBox& box) const - { - return (boxtype != box.boxtype || - mincorner != box.mincorner || - maxcorner != box.maxcorner); - } - - friend bool qFuzzyCompare(const Q3DBox& box1, const Q3DBox& box2); - -private: - enum Type - { - Null, - Finite, - Infinite - }; - - Q3DBox::Type boxtype; - QVector3D mincorner, maxcorner; -}; - -inline bool qFuzzyCompare(const Q3DBox& box1, const Q3DBox& box2) -{ - return box1.boxtype == box2.boxtype && - qFuzzyCompare(box1.mincorner, box2.mincorner) && - qFuzzyCompare(box1.maxcorner, box2.maxcorner); -} - -#ifndef QT_NO_DEBUG_STREAM -QT_DATAVISUALIZATION_EXPORT QDebug operator<<(QDebug dbg, const Q3DBox &box); -#endif - -#ifndef QT_NO_DATASTREAM -QT_DATAVISUALIZATION_EXPORT QDataStream &operator<<(QDataStream &stream, const Q3DBox &box); -QT_DATAVISUALIZATION_EXPORT QDataStream &operator>>(QDataStream &stream, Q3DBox &box); -#endif - -QT_END_NAMESPACE_DATAVISUALIZATION - -#endif diff --git a/src/datavisualization/engine/q3dcamera.cpp b/src/datavisualization/engine/q3dcamera.cpp index a3afd019..c7342aa9 100644 --- a/src/datavisualization/engine/q3dcamera.cpp +++ b/src/datavisualization/engine/q3dcamera.cpp @@ -19,12 +19,10 @@ #include "q3dcamera.h" #include "q3dcamera_p.h" #include "q3dscene.h" -#include "q3dbox.h" #include "q3dobject.h" #include "utils_p.h" -#include <qmath.h> -#include <QVector3D> +#include <QtCore/qmath.h> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/q3dcamera.h b/src/datavisualization/engine/q3dcamera.h index 44aff452..87602e5c 100644 --- a/src/datavisualization/engine/q3dcamera.h +++ b/src/datavisualization/engine/q3dcamera.h @@ -20,10 +20,6 @@ #define Q3DCAMERA_H #include <QtDataVisualization/q3dobject.h> -#include <QMatrix4x4> - -class QVector3D; -class QPoint; QT_BEGIN_NAMESPACE_DATAVISUALIZATION @@ -69,7 +65,6 @@ public: CameraPresetDirectlyBelow }; -public: Q3DCamera(QObject *parent = 0); virtual ~Q3DCamera(); @@ -116,7 +111,6 @@ private: friend class SelectionPointer; friend class Q3DInputHandler; friend class QTouch3DInputHandlerPrivate; - friend class QMac3DInputHandler; }; QT_END_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/q3dcamera_p.h b/src/datavisualization/engine/q3dcamera_p.h index 1112c87e..884229e3 100644 --- a/src/datavisualization/engine/q3dcamera_p.h +++ b/src/datavisualization/engine/q3dcamera_p.h @@ -31,6 +31,7 @@ #include "datavisualizationglobal_p.h" #include "q3dcamera.h" +#include <QtGui/QMatrix4x4> QT_BEGIN_NAMESPACE_DATAVISUALIZATION @@ -106,7 +107,6 @@ public: friend class SelectionPointer; friend class Q3DInputHandler; friend class QTouch3DInputHandler; - friend class QMac3DInputHandler; }; QT_END_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/q3dlight.h b/src/datavisualization/engine/q3dlight.h index 876601a7..6d51b90f 100644 --- a/src/datavisualization/engine/q3dlight.h +++ b/src/datavisualization/engine/q3dlight.h @@ -24,7 +24,6 @@ QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Q3DLightPrivate; -class Q3DScene; class QT_DATAVISUALIZATION_EXPORT Q3DLight : public Q3DObject { diff --git a/src/datavisualization/engine/q3dobject.h b/src/datavisualization/engine/q3dobject.h index 07506f63..4ea505bb 100644 --- a/src/datavisualization/engine/q3dobject.h +++ b/src/datavisualization/engine/q3dobject.h @@ -19,14 +19,14 @@ #ifndef Q3DOBJECT_H #define Q3DOBJECT_H -#include <QtDataVisualization/q3dscene.h> - -#include <QObject> -#include <QVector3D> +#include <QtDataVisualization/qdatavisualizationglobal.h> +#include <QtCore/QObject> +#include <QtGui/QVector3D> QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Q3DObjectPrivate; +class Q3DScene; class QT_DATAVISUALIZATION_EXPORT Q3DObject : public QObject { @@ -46,7 +46,7 @@ public: void setPosition(const QVector3D &position); signals: - void positionChanged(QVector3D position); + void positionChanged(const QVector3D &position); protected: void setDirty(bool dirty); diff --git a/src/datavisualization/engine/q3dscatter.h b/src/datavisualization/engine/q3dscatter.h index 2d8516ee..016431af 100644 --- a/src/datavisualization/engine/q3dscatter.h +++ b/src/datavisualization/engine/q3dscatter.h @@ -20,16 +20,12 @@ #define Q3DSCATTER_H #include <QtDataVisualization/qabstract3dgraph.h> -#include <QtDataVisualization/q3dscene.h> -#include <QFont> -#include <QLinearGradient> +#include <QtDataVisualization/qvalue3daxis.h> +#include <QtDataVisualization/qscatter3dseries.h> QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Q3DScatterPrivate; -class QValue3DAxis; -class QCategory3DAxis; -class QScatter3DSeries; class QT_DATAVISUALIZATION_EXPORT Q3DScatter : public QAbstract3DGraph { diff --git a/src/datavisualization/engine/q3dscene.cpp b/src/datavisualization/engine/q3dscene.cpp index f4467f22..be64b928 100644 --- a/src/datavisualization/engine/q3dscene.cpp +++ b/src/datavisualization/engine/q3dscene.cpp @@ -16,8 +16,6 @@ ** ****************************************************************************/ -#include <qmath.h> - #include "datavisualizationglobal_p.h" #include "q3dscene.h" @@ -25,6 +23,8 @@ #include "q3dcamera_p.h" #include "q3dlight_p.h" +#include <QtCore/qmath.h> + QT_BEGIN_NAMESPACE_DATAVISUALIZATION /*! diff --git a/src/datavisualization/engine/q3dscene.h b/src/datavisualization/engine/q3dscene.h index 9c122c2a..d663744e 100644 --- a/src/datavisualization/engine/q3dscene.h +++ b/src/datavisualization/engine/q3dscene.h @@ -20,15 +20,13 @@ #define Q3DSCENE_H #include <QtDataVisualization/qdatavisualizationglobal.h> - -#include <QObject> -#include <QRect> +#include <QtDataVisualization/q3dcamera.h> +#include <QtDataVisualization/q3dlight.h> +#include <QtCore/QObject> +#include <QtCore/QRect> QT_BEGIN_NAMESPACE_DATAVISUALIZATION -class Q3DCamera; -class Q3DBox; -class Q3DLight; class Q3DScenePrivate; class QT_DATAVISUALIZATION_EXPORT Q3DScene : public QObject @@ -46,7 +44,7 @@ class QT_DATAVISUALIZATION_EXPORT Q3DScene : public QObject public: Q3DScene(QObject *parent = 0); - ~Q3DScene(); + virtual ~Q3DScene(); QRect viewport() const; @@ -78,15 +76,15 @@ public: void setDevicePixelRatio(float pixelRatio); signals: - void viewportChanged(QRect viewport); - void primarySubViewportChanged(QRect subViewport); - void secondarySubViewportChanged(QRect subViewport); + void viewportChanged(const QRect &viewport); + void primarySubViewportChanged(const QRect &subViewport); + void secondarySubViewportChanged(const QRect &subViewport); void secondarySubviewOnTopChanged(bool isSecondaryOnTop); void slicingActiveChanged(bool isSlicingActive); - void activeCameraChanged(const Q3DCamera *camera); - void activeLightChanged(const Q3DLight *light); + void activeCameraChanged(Q3DCamera *camera); + void activeLightChanged(Q3DLight *light); void devicePixelRatioChanged(float pixelRatio); - void selectionQueryPositionChanged(const QPoint position); + void selectionQueryPositionChanged(const QPoint &position); private: QScopedPointer<Q3DScenePrivate> d_ptr; diff --git a/src/datavisualization/engine/q3dscene_p.h b/src/datavisualization/engine/q3dscene_p.h index b2948c06..bc6a7223 100644 --- a/src/datavisualization/engine/q3dscene_p.h +++ b/src/datavisualization/engine/q3dscene_p.h @@ -30,7 +30,7 @@ #define Q3DSCENE_P_H #include "datavisualizationglobal_p.h" -#include <QRect> +#include "q3dscene.h" QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/q3dsurface.h b/src/datavisualization/engine/q3dsurface.h index 673ce4d7..9868c844 100644 --- a/src/datavisualization/engine/q3dsurface.h +++ b/src/datavisualization/engine/q3dsurface.h @@ -20,14 +20,12 @@ #define Q3DSURFACE_H #include <QtDataVisualization/qabstract3dgraph.h> -#include <QtDataVisualization/q3dscene.h> -#include <QFont> +#include <QtDataVisualization/qvalue3daxis.h> +#include <QtDataVisualization/qsurface3dseries.h> QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Q3DSurfacePrivate; -class QValue3DAxis; -class QSurface3DSeries; class QT_DATAVISUALIZATION_EXPORT Q3DSurface : public QAbstract3DGraph { diff --git a/src/datavisualization/engine/q3dsurface_p.h b/src/datavisualization/engine/q3dsurface_p.h index 540956b6..0e5a5121 100644 --- a/src/datavisualization/engine/q3dsurface_p.h +++ b/src/datavisualization/engine/q3dsurface_p.h @@ -32,8 +32,6 @@ #include "surface3dcontroller_p.h" #include "qabstract3dgraph_p.h" -#include <QList> - QT_BEGIN_NAMESPACE_DATAVISUALIZATION class Q3DSurface; diff --git a/src/datavisualization/engine/qabstract3dgraph.cpp b/src/datavisualization/engine/qabstract3dgraph.cpp index aeb4a0b6..f2102b29 100644 --- a/src/datavisualization/engine/qabstract3dgraph.cpp +++ b/src/datavisualization/engine/qabstract3dgraph.cpp @@ -23,11 +23,10 @@ #include "q3dscene_p.h" #include "qutils.h" -#include <QGuiApplication> -#include <QOpenGLContext> -#include <QOpenGLPaintDevice> -#include <QPainter> - +#include <QtGui/QGuiApplication> +#include <QtGui/QOpenGLContext> +#include <QtGui/QOpenGLPaintDevice> +#include <QtGui/QPainter> QT_BEGIN_NAMESPACE_DATAVISUALIZATION @@ -222,7 +221,7 @@ void QAbstract3DGraph::setActiveInputHandler(QAbstract3DInputHandler *inputHandl d_ptr->m_visualController->setActiveInputHandler(inputHandler); } -QAbstract3DInputHandler *QAbstract3DGraph::activeInputHandler() +QAbstract3DInputHandler *QAbstract3DGraph::activeInputHandler() const { return d_ptr->m_visualController->activeInputHandler(); } diff --git a/src/datavisualization/engine/qabstract3dgraph.h b/src/datavisualization/engine/qabstract3dgraph.h index 9534ce5c..adf67912 100644 --- a/src/datavisualization/engine/qabstract3dgraph.h +++ b/src/datavisualization/engine/qabstract3dgraph.h @@ -20,18 +20,15 @@ #define QABSTRACT3DGRAPH_H #include <QtDataVisualization/qdatavisualizationglobal.h> - -#include <QWindow> -#include <QOpenGLFunctions> -#include <QScreen> +#include <QtDataVisualization/q3dtheme.h> +#include <QtDataVisualization/q3dscene.h> +#include <QtDataVisualization/qabstract3dinputhandler.h> +#include <QtGui/QWindow> +#include <QtGui/QOpenGLFunctions> QT_BEGIN_NAMESPACE_DATAVISUALIZATION class QAbstract3DGraphPrivate; -class Abstract3DController; -class QAbstract3DInputHandler; -class Q3DTheme; -class Q3DScene; class QT_DATAVISUALIZATION_EXPORT QAbstract3DGraph : public QWindow, protected QOpenGLFunctions { @@ -78,7 +75,7 @@ public: void addInputHandler(QAbstract3DInputHandler *inputHandler); void releaseInputHandler(QAbstract3DInputHandler *inputHandler); void setActiveInputHandler(QAbstract3DInputHandler *inputHandler); - QAbstract3DInputHandler *activeInputHandler(); + QAbstract3DInputHandler *activeInputHandler() const; QList<QAbstract3DInputHandler *> inputHandlers() const; void addTheme(Q3DTheme *theme); @@ -117,6 +114,7 @@ signals: void shadowQualityChanged(ShadowQuality quality); private: + Q_DISABLE_COPY(QAbstract3DGraph) QScopedPointer<QAbstract3DGraphPrivate> d_ptr; friend class Q3DBars; diff --git a/src/datavisualization/engine/qabstract3dgraph_p.h b/src/datavisualization/engine/qabstract3dgraph_p.h index a353797b..d28495ab 100644 --- a/src/datavisualization/engine/qabstract3dgraph_p.h +++ b/src/datavisualization/engine/qabstract3dgraph_p.h @@ -31,8 +31,6 @@ #include "datavisualizationglobal_p.h" -#include <QObject> - class QOpenGLContext; class QOpenGLPaintDevice; diff --git a/src/datavisualization/engine/scatter3dcontroller.cpp b/src/datavisualization/engine/scatter3dcontroller.cpp index 8495052e..54292ac0 100644 --- a/src/datavisualization/engine/scatter3dcontroller.cpp +++ b/src/datavisualization/engine/scatter3dcontroller.cpp @@ -24,8 +24,8 @@ #include "qscatterdataproxy_p.h" #include "qscatter3dseries_p.h" -#include <QMatrix4x4> -#include <qmath.h> +#include <QtGui/QMatrix4x4> +#include <QtCore/qmath.h> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/scatter3drenderer.cpp b/src/datavisualization/engine/scatter3drenderer.cpp index d6f34a67..1785ca2c 100644 --- a/src/datavisualization/engine/scatter3drenderer.cpp +++ b/src/datavisualization/engine/scatter3drenderer.cpp @@ -27,11 +27,10 @@ #include "q3dlight.h" #include "qscatter3dseries_p.h" -#include <QMatrix4x4> -#include <QMouseEvent> -#include <QThread> -#include <qmath.h> -#include <QDebug> +#include <QtGui/QMatrix4x4> +#include <QtGui/QMouseEvent> +#include <QtCore/QThread> +#include <QtCore/qmath.h> // Commenting this draws the shadow map with perspective projection. Otherwise it's drawn in // orthographic projection. diff --git a/src/datavisualization/engine/selectionpointer.cpp b/src/datavisualization/engine/selectionpointer.cpp index fc1d7669..d4e635bc 100644 --- a/src/datavisualization/engine/selectionpointer.cpp +++ b/src/datavisualization/engine/selectionpointer.cpp @@ -26,7 +26,7 @@ #include "utils_p.h" #include "q3dlight.h" -#include <QMatrix4x4> +#include <QtGui/QMatrix4x4> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/selectionpointer_p.h b/src/datavisualization/engine/selectionpointer_p.h index c72b3510..1eac22be 100644 --- a/src/datavisualization/engine/selectionpointer_p.h +++ b/src/datavisualization/engine/selectionpointer_p.h @@ -29,8 +29,6 @@ #ifndef SELECTIONPOINTER_P_H #define SELECTIONPOINTER_P_H -#include <QVector3D> - #include "q3dscene.h" #include "datavisualizationglobal_p.h" #include "surface3dcontroller_p.h" diff --git a/src/datavisualization/engine/surface3dcontroller.cpp b/src/datavisualization/engine/surface3dcontroller.cpp index 48100c05..12d06501 100644 --- a/src/datavisualization/engine/surface3dcontroller.cpp +++ b/src/datavisualization/engine/surface3dcontroller.cpp @@ -26,9 +26,7 @@ #include "qsurface3dseries_p.h" #include "shaderhelper_p.h" -#include <QMatrix4x4> - -#include <QDebug> +#include <QtGui/QMatrix4x4> QT_BEGIN_NAMESPACE_DATAVISUALIZATION diff --git a/src/datavisualization/engine/surface3drenderer.cpp b/src/datavisualization/engine/surface3drenderer.cpp index c77f1787..fdb3c170 100644 --- a/src/datavisualization/engine/surface3drenderer.cpp +++ b/src/datavisualization/engine/surface3drenderer.cpp @@ -30,11 +30,9 @@ #include "q3dlight.h" #include "qsurface3dseries_p.h" -#include <QMatrix4x4> -#include <QMouseEvent> -#include <qmath.h> - -#include <QDebug> +#include <QtGui/QMatrix4x4> +#include <QtGui/QMouseEvent> +#include <QtCore/qmath.h> static const int ID_TO_RGBA_MASK = 0xff; |