summaryrefslogtreecommitdiffstats
path: root/src/render/raycasting/qcollisionqueryresult_p.h
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2017-01-28 15:56:26 +0000
committerSean Harmer <sean.harmer@kdab.com>2017-01-29 10:17:49 +0000
commit8ef8c094dd55d198c5601689e0f1cc9fcc14274b (patch)
treefbdd6c1e35a6f2606286752a98a9018213fdb789 /src/render/raycasting/qcollisionqueryresult_p.h
parent9c5bf588ab310e274fddffb252962e8abfa66bd2 (diff)
parent2f3cfb7f19911f29e6ea7c0528b26f9263d38121 (diff)
Merge branch 'wip/qtquickintegration' into dev
Conflicts: src/quick3d/imports/render/qt3dquick3drenderplugin.cpp src/render/backend/triangleboundingvolume.cpp src/render/backend/triangleboundingvolume_p.h src/render/frontend/qrenderaspect.cpp src/render/frontend/sphere.cpp src/render/frontend/sphere_p.h src/render/jobs/pickboundingvolumejob.cpp src/render/jobs/pickboundingvolumejob_p.h src/render/picking/objectpicker.cpp src/render/raycasting/qcollisionqueryresult_p.h src/render/render.pro src/src.pro tests/auto/render/objectpicker/tst_objectpicker.cpp tests/auto/render/render.pro Change-Id: I95717c7855887850d5c90e7ad8f19f1ffb37a545
Diffstat (limited to 'src/render/raycasting/qcollisionqueryresult_p.h')
-rw-r--r--src/render/raycasting/qcollisionqueryresult_p.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/render/raycasting/qcollisionqueryresult_p.h b/src/render/raycasting/qcollisionqueryresult_p.h
index 18b45370a..e13dda74a 100644
--- a/src/render/raycasting/qcollisionqueryresult_p.h
+++ b/src/render/raycasting/qcollisionqueryresult_p.h
@@ -69,13 +69,27 @@ class QT3DRENDERSHARED_EXPORT QCollisionQueryResult
{
public:
struct Hit {
- Hit() : m_distance(-1.f), m_triangleIndex(0) { m_vertexIndex[0] = m_vertexIndex[1] = m_vertexIndex[2] = 0; }
- Hit(const Qt3DCore::QNodeId &entity, const QVector3D &intersection, float distance) : m_entityId(entity), m_intersection(intersection), m_distance(distance) { }
+ Hit()
+ : m_distance(-1.f)
+ , m_triangleIndex(0)
+ {
+ m_vertexIndex[0] = m_vertexIndex[1] = m_vertexIndex[2] = 0;
+ }
+
+ Hit(Qt3DCore::QNodeId entity, const QVector3D &intersection, float distance, const QVector3D &uvw)
+ : m_entityId(entity)
+ , m_intersection(intersection)
+ , m_distance(distance)
+ , m_uvw(uvw)
+ {
+ }
+
Qt3DCore::QNodeId m_entityId;
QVector3D m_intersection;
float m_distance;
uint m_triangleIndex;
uint m_vertexIndex[3];
+ QVector3D m_uvw;
};
QCollisionQueryResult();
@@ -123,7 +137,8 @@ public:
explicit QCollisionQueryResultPrivate(const QCollisionQueryResultPrivate &copy);
void setHandle(const QQueryHandle &handle);
- void addEntityHit(Qt3DCore::QNodeId entity, const QVector3D& intersection, float distance);
+ void addEntityHit(Qt3DCore::QNodeId entity, const QVector3D& intersection, float distance,
+ const QVector3D& uvw);
QQueryHandle m_handle;
QVector<QCollisionQueryResult::Hit> m_hits;