summaryrefslogtreecommitdiffstats
path: root/src/render/geometry/qgeometryrenderer.h
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2020-02-26 20:00:40 +0000
committerMike Krus <mike.krus@kdab.com>2020-04-08 08:47:39 +0000
commit1733ab2ceb1d6db95194b020ec289040edff0cfd (patch)
tree27eb17dc02f5287b73c22747100bf54fb7eb6794 /src/render/geometry/qgeometryrenderer.h
parent3d8dbf99ae9f70a74be39acccdf60203a74b0588 (diff)
Introduce QBoundingVolume class
Used to query the bounding volume of a geometry view (currently not computed, needs jobs in core aspect). Will later enable explicitly setting the bounds if known (to avoid the computation). GeometryRenderer derives from BoundingVolume to keep existing scenes working. User will be able to have both a GeometryRenderer and a BoundingVolume component on an entity, could use different (simpler) geometry for bounding volume computation. There's an private flag which tags the primary provider (in case there's several), it's false by default for GeometryRenderer instances. Change-Id: I53711b4138718b0802c2a2fccd52b6c8ec16e7ca Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/render/geometry/qgeometryrenderer.h')
-rw-r--r--src/render/geometry/qgeometryrenderer.h8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/render/geometry/qgeometryrenderer.h b/src/render/geometry/qgeometryrenderer.h
index 0eee34b86..14d8bbccc 100644
--- a/src/render/geometry/qgeometryrenderer.h
+++ b/src/render/geometry/qgeometryrenderer.h
@@ -40,7 +40,7 @@
#ifndef QT3DRENDER_QGEOMETRYRENDERER_H
#define QT3DRENDER_QGEOMETRYRENDERER_H
-#include <Qt3DCore/qcomponent.h>
+#include <Qt3DCore/qboundingvolume.h>
#include <Qt3DCore/qgeometry.h>
#include <Qt3DCore/qgeometryview.h>
#include <Qt3DRender/qt3drender_global.h>
@@ -51,7 +51,7 @@ namespace Qt3DRender {
class QGeometryRendererPrivate;
-class Q_3DRENDERSHARED_EXPORT QGeometryRenderer : public Qt3DCore::QComponent
+class Q_3DRENDERSHARED_EXPORT QGeometryRenderer : public Qt3DCore::QBoundingVolume
{
Q_OBJECT
Q_PROPERTY(int instanceCount READ instanceCount WRITE setInstanceCount NOTIFY instanceCountChanged)
@@ -65,7 +65,6 @@ class Q_3DRENDERSHARED_EXPORT QGeometryRenderer : public Qt3DCore::QComponent
Q_PROPERTY(bool primitiveRestartEnabled READ primitiveRestartEnabled WRITE setPrimitiveRestartEnabled NOTIFY primitiveRestartEnabledChanged)
Q_PROPERTY(Qt3DCore::QGeometry* geometry READ geometry WRITE setGeometry NOTIFY geometryChanged)
Q_PROPERTY(PrimitiveType primitiveType READ primitiveType WRITE setPrimitiveType NOTIFY primitiveTypeChanged)
- Q_PROPERTY(Qt3DCore::QGeometryView* view READ view WRITE setView NOTIFY viewChanged)
public:
explicit QGeometryRenderer(Qt3DCore::QNode *parent = nullptr);
~QGeometryRenderer();
@@ -100,7 +99,6 @@ public:
bool primitiveRestartEnabled() const;
Qt3DCore::QGeometry *geometry() const;
PrimitiveType primitiveType() const;
- Qt3DCore::QGeometryView *view() const;
public Q_SLOTS:
void setInstanceCount(int instanceCount);
@@ -114,7 +112,6 @@ public Q_SLOTS:
void setPrimitiveRestartEnabled(bool enabled);
void setGeometry(Qt3DCore::QGeometry *geometry);
void setPrimitiveType(PrimitiveType primitiveType);
- void setView(Qt3DCore::QGeometryView *view);
Q_SIGNALS:
void instanceCountChanged(int instanceCount);
@@ -128,7 +125,6 @@ Q_SIGNALS:
void primitiveRestartEnabledChanged(bool primitiveRestartEnabled);
void geometryChanged(Qt3DCore::QGeometry *geometry);
void primitiveTypeChanged(PrimitiveType primitiveType);
- void viewChanged(Qt3DCore::QGeometryView *view);
protected:
explicit QGeometryRenderer(QGeometryRendererPrivate &dd, Qt3DCore::QNode *parent = nullptr);