diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-10-20 16:16:16 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-10-24 14:05:39 +0000 |
commit | 1f58bd56479dff5ccaad7446ae92a27e60ec0b73 (patch) | |
tree | 29e4add04b4d79af4630ee76f2039f1439a291dd /src | |
parent | dbf2cb2e3f077ac8ca9d3300ed0fc146f8e65a00 (diff) |
Sphere moved into Render namespace and made private
Change-Id: I940a8ea898a338f20bb9abbebcc1fcef9830a118
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/render/backend/entity.cpp | 2 | ||||
-rw-r--r-- | src/render/backend/entity_p.h | 2 | ||||
-rw-r--r-- | src/render/backend/renderview.cpp | 2 | ||||
-rw-r--r-- | src/render/frontend/render-frontend.pri | 4 | ||||
-rw-r--r-- | src/render/frontend/sphere.cpp | 14 | ||||
-rw-r--r-- | src/render/frontend/sphere_p.h (renamed from src/render/frontend/sphere.h) | 18 | ||||
-rw-r--r-- | src/render/jobs/calcboundingvolumejob.cpp | 2 | ||||
-rw-r--r-- | src/render/jobs/framepreparationjob.cpp | 2 | ||||
-rw-r--r-- | src/render/jobs/pickboundingvolumejob.cpp | 2 | ||||
-rw-r--r-- | src/render/jobs/renderviewjobutils.cpp | 2 | ||||
-rw-r--r-- | src/render/jobs/updateboundingvolumejob.cpp | 6 | ||||
-rw-r--r-- | src/render/jobs/updateworldtransformjob.cpp | 2 | ||||
-rw-r--r-- | src/render/services/qraycastingservice.cpp | 2 |
13 files changed, 34 insertions, 26 deletions
diff --git a/src/render/backend/entity.cpp b/src/render/backend/entity.cpp index 71378bf20..7cbf7605f 100644 --- a/src/render/backend/entity.cpp +++ b/src/render/backend/entity.cpp @@ -42,7 +42,7 @@ #include <Qt3DRender/qmaterial.h> #include <Qt3DRender/qmesh.h> #include <Qt3DRender/private/renderlogging_p.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DRender/qshaderdata.h> #include <Qt3DRender/qgeometryrenderer.h> #include <Qt3DRender/qobjectpicker.h> diff --git a/src/render/backend/entity_p.h b/src/render/backend/entity_p.h index c43c8a5c8..64e90db5c 100644 --- a/src/render/backend/entity_p.h +++ b/src/render/backend/entity_p.h @@ -69,10 +69,10 @@ class QComponent; namespace Qt3DRender { class QRenderAspect; -class Sphere; namespace Render { +class Sphere; class Renderer; class Q_AUTOTEST_EXPORT Entity : public Qt3DCore::QBackendNode diff --git a/src/render/backend/renderview.cpp b/src/render/backend/renderview.cpp index f509f645c..d1ca14fc3 100644 --- a/src/render/backend/renderview.cpp +++ b/src/render/backend/renderview.cpp @@ -39,7 +39,7 @@ #include <Qt3DRender/qmaterial.h> #include <Qt3DRender/qrenderaspect.h> #include <Qt3DRender/qrendertarget.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DRender/private/cameraselectornode_p.h> #include <Qt3DRender/private/framegraphnode_p.h> diff --git a/src/render/frontend/render-frontend.pri b/src/render/frontend/render-frontend.pri index 6811bd819..1cca3dcac 100644 --- a/src/render/frontend/render-frontend.pri +++ b/src/render/frontend/render-frontend.pri @@ -4,7 +4,6 @@ HEADERS += \ $$PWD/qrenderaspect.h \ $$PWD/qrenderaspect_p.h \ $$PWD/qitemmodelbuffer.h \ - $$PWD/sphere.h \ $$PWD/qlayer.h \ $$PWD/qlayer_p.h \ $$PWD/qrenderattachment.h \ @@ -14,7 +13,8 @@ HEADERS += \ $$PWD/qwindow.h \ $$PWD/qwindow_p.h \ $$PWD/qobjectpicker.h \ - $$PWD/qpickevent.h + $$PWD/qpickevent.h \ + $$PWD/sphere_p.h SOURCES += \ $$PWD/qrenderaspect.cpp \ diff --git a/src/render/frontend/sphere.cpp b/src/render/frontend/sphere.cpp index 59e4ca86a..262953993 100644 --- a/src/render/frontend/sphere.cpp +++ b/src/render/frontend/sphere.cpp @@ -34,7 +34,7 @@ ** ****************************************************************************/ -#include "sphere.h" +#include "sphere_p.h" #include <Qt3DCore/qray3d.h> @@ -50,7 +50,7 @@ namespace { // Intersects ray r = p + td, |d| = 1, with sphere s and, if intersecting, // returns true and intersection point q; false otherwise -bool intersectRaySphere(const Qt3DCore::QRay3D &ray, const Qt3DRender::Sphere &s, QVector3D *q = Q_NULLPTR) +bool intersectRaySphere(const Qt3DCore::QRay3D &ray, const Qt3DRender::Render::Sphere &s, QVector3D *q = Q_NULLPTR) { const QVector3D p = ray.origin(); const QVector3D d = ray.direction(); @@ -121,7 +121,7 @@ inline QPair<int, int> findExtremePoints(const QVector<QVector3D> &points) return extremeIndices; } -inline void sphereFromExtremePoints(Qt3DRender::Sphere &s, const QVector<QVector3D> &points) +inline void sphereFromExtremePoints(Qt3DRender::Render::Sphere &s, const QVector<QVector3D> &points) { // Find two most separated points on any of the basis vectors QPair<int, int> extremeIndices = findExtremePoints(points); @@ -134,7 +134,7 @@ inline void sphereFromExtremePoints(Qt3DRender::Sphere &s, const QVector<QVector s.setRadius((q - c).length()); } -inline void constructRitterSphere(Qt3DRender::Sphere &s, const QVector<QVector3D> &points) +inline void constructRitterSphere(Qt3DRender::Render::Sphere &s, const QVector<QVector3D> &points) { // Calculate the sphere encompassing two axially extreme points sphereFromExtremePoints(s, points); @@ -147,6 +147,8 @@ inline void constructRitterSphere(Qt3DRender::Sphere &s, const QVector<QVector3D namespace Qt3DRender { +namespace Render { + const float Sphere::ms_epsilon = 1.0e-7f; Sphere Sphere::fromPoints(const QVector<QVector3D> &points) @@ -226,6 +228,8 @@ Qt3DCore::QBoundingVolume::Type Sphere::type() const return QBoundingVolume::Sphere; } -} +} // Render + +} // Qt3DRender QT_END_NAMESPACE diff --git a/src/render/frontend/sphere.h b/src/render/frontend/sphere_p.h index 99aa252f7..84ba8baf6 100644 --- a/src/render/frontend/sphere.h +++ b/src/render/frontend/sphere_p.h @@ -34,10 +34,10 @@ ** ****************************************************************************/ -#ifndef SPHERE_H -#define SPHERE_H +#ifndef QT3DRENDER_RENDER_SPHERE_H +#define QT3DRENDER_RENDER_SPHERE_H -#include <Qt3DRender/qt3drender_global.h> +#include <Qt3DRender/private/qt3drender_global_p.h> #include <Qt3DCore/qnodeid.h> #include <Qt3DCore/qboundingsphere.h> @@ -48,7 +48,9 @@ QT_BEGIN_NAMESPACE namespace Qt3DRender { -class QT3DRENDERSHARED_EXPORT Sphere : public Qt3DCore::QBoundingSphere +namespace Render { + +class QT3DRENDERSHARED_PRIVATE_EXPORT Sphere : public Qt3DCore::QBoundingSphere { public: inline Sphere(const Qt3DCore::QNodeId &i = Qt3DCore::QNodeId()) @@ -141,10 +143,12 @@ inline bool intersects(const Sphere &a, const Sphere &b) return distSq <= sumRadii * sumRadii; } -} +} // Render + +} // Qt3DRender QT_END_NAMESPACE -Q_DECLARE_METATYPE(Qt3DRender::Sphere) +Q_DECLARE_METATYPE(Qt3DRender::Render::Sphere) -#endif // SPHERE_H +#endif // QT3DRENDER_RENDER_SPHERE_H diff --git a/src/render/jobs/calcboundingvolumejob.cpp b/src/render/jobs/calcboundingvolumejob.cpp index 32aa88ce6..7de9b3517 100644 --- a/src/render/jobs/calcboundingvolumejob.cpp +++ b/src/render/jobs/calcboundingvolumejob.cpp @@ -45,7 +45,7 @@ #include <Qt3DRender/private/buffermanager_p.h> #include <Qt3DRender/private/attribute_p.h> #include <Qt3DRender/private/buffer_p.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DCore/qaxisalignedboundingbox.h> #include <QtCore/qmath.h> diff --git a/src/render/jobs/framepreparationjob.cpp b/src/render/jobs/framepreparationjob.cpp index 57611799f..f01e7c1e9 100644 --- a/src/render/jobs/framepreparationjob.cpp +++ b/src/render/jobs/framepreparationjob.cpp @@ -38,7 +38,7 @@ #include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/private/shaderdata_p.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> QT_BEGIN_NAMESPACE diff --git a/src/render/jobs/pickboundingvolumejob.cpp b/src/render/jobs/pickboundingvolumejob.cpp index 34ad4a648..656c3f090 100644 --- a/src/render/jobs/pickboundingvolumejob.cpp +++ b/src/render/jobs/pickboundingvolumejob.cpp @@ -43,7 +43,7 @@ #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/private/objectpicker_p.h> #include <Qt3DRender/private/managers_p.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DRender/qraycastingservice.h> #include <Qt3DCore/qservicelocator.h> #include <Qt3DCore/qray3d.h> diff --git a/src/render/jobs/renderviewjobutils.cpp b/src/render/jobs/renderviewjobutils.cpp index 7f1336581..8338161b1 100644 --- a/src/render/jobs/renderviewjobutils.cpp +++ b/src/render/jobs/renderviewjobutils.cpp @@ -38,7 +38,7 @@ #include "renderlogging_p.h" #include <Qt3DRender/qopenglfilter.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DRender/qshaderdata.h> #include <Qt3DRender/private/cameraselectornode_p.h> diff --git a/src/render/jobs/updateboundingvolumejob.cpp b/src/render/jobs/updateboundingvolumejob.cpp index 55fa3f155..deaaab756 100644 --- a/src/render/jobs/updateboundingvolumejob.cpp +++ b/src/render/jobs/updateboundingvolumejob.cpp @@ -39,7 +39,7 @@ #include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/entity_p.h> #include <Qt3DRender/private/renderlogging_p.h> -#include <sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <QElapsedTimer> #include <QStack> @@ -69,14 +69,14 @@ void expandWorldBoundingVolume(Qt3DRender::Render::Entity *node) // Initialize parent bounding volume to be equal to that of the first child Qt3DRender::Render::Entity *parentNode = currentNode->parent(); - Qt3DRender::Sphere *parentBoundingVolume = parentNode->worldBoundingVolumeWithChildren(); + Qt3DRender::Render::Sphere *parentBoundingVolume = parentNode->worldBoundingVolumeWithChildren(); *(parentBoundingVolume) = *(currentNode->worldBoundingVolumeWithChildren()); // Expand the parent bounding volume by each of remaining the siblings QVector<Entity *> siblings = parentNode->children(); const int siblingCount = siblings.count(); for (int i = 1; i < siblingCount; ++i) { - Qt3DRender::Sphere *siblingBoundingVolume = siblings.at(i)->worldBoundingVolumeWithChildren(); + Qt3DRender::Render::Sphere *siblingBoundingVolume = siblings.at(i)->worldBoundingVolumeWithChildren(); parentBoundingVolume->expandToContain(*siblingBoundingVolume); } diff --git a/src/render/jobs/updateworldtransformjob.cpp b/src/render/jobs/updateworldtransformjob.cpp index ae4d36323..dc8552a75 100644 --- a/src/render/jobs/updateworldtransformjob.cpp +++ b/src/render/jobs/updateworldtransformjob.cpp @@ -38,7 +38,7 @@ #include <Qt3DRender/private/renderer_p.h> #include <Qt3DRender/private/entity_p.h> -#include <sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DRender/private/transform_p.h> #include <Qt3DRender/private/renderlogging_p.h> #include <QThread> diff --git a/src/render/services/qraycastingservice.cpp b/src/render/services/qraycastingservice.cpp index 3045a065b..93dbc4e2e 100644 --- a/src/render/services/qraycastingservice.cpp +++ b/src/render/services/qraycastingservice.cpp @@ -38,7 +38,7 @@ #include "qraycastingservice_p.h" #include <Qt3DCore/qray3d.h> -#include <Qt3DRender/sphere.h> +#include <Qt3DRender/private/sphere_p.h> #include <Qt3DCore/qboundingvolumeprovider.h> #include <QMap> |