From 3d4639bfdd861873eed4a946c0ad01b57c517bc5 Mon Sep 17 00:00:00 2001 From: SamGondelman Date: Fri, 27 Jul 2018 15:30:27 -0700 Subject: [PATCH] CR --- interface/src/raypick/LaserPointer.cpp | 14 +++++++------- interface/src/raypick/LaserPointer.h | 10 +++++----- interface/src/raypick/ParabolaPick.h | 12 ++++++------ interface/src/raypick/ParabolaPointer.cpp | 14 +++++++------- interface/src/raypick/ParabolaPointer.h | 10 +++++----- interface/src/raypick/PathPointer.cpp | 2 -- interface/src/raypick/PathPointer.h | 10 +++++----- interface/src/raypick/RayPick.h | 10 +++++----- 8 files changed, 40 insertions(+), 42 deletions(-) diff --git a/interface/src/raypick/LaserPointer.cpp b/interface/src/raypick/LaserPointer.cpp index f65f2e9639..2382a95105 100644 --- a/interface/src/raypick/LaserPointer.cpp +++ b/interface/src/raypick/LaserPointer.cpp @@ -35,12 +35,12 @@ void LaserPointer::editRenderStatePath(const std::string& state, const QVariant& } } -glm::vec3 LaserPointer::getPickOrigin(const PickResultPointer& pickResult) { +glm::vec3 LaserPointer::getPickOrigin(const PickResultPointer& pickResult) const { auto rayPickResult = std::static_pointer_cast(pickResult); - return (rayPickResult ? vec3FromVariant(rayPickResult->pickVariant["origin"]) : glm::vec3()); + return (rayPickResult ? vec3FromVariant(rayPickResult->pickVariant["origin"]) : glm::vec3(0.0f)); } -glm::vec3 LaserPointer::getPickEnd(const PickResultPointer& pickResult, float distance) { +glm::vec3 LaserPointer::getPickEnd(const PickResultPointer& pickResult, float distance) const { auto rayPickResult = std::static_pointer_cast(pickResult); if (distance > 0.0f) { PickRay pick = PickRay(rayPickResult->pickVariant); @@ -50,17 +50,17 @@ glm::vec3 LaserPointer::getPickEnd(const PickResultPointer& pickResult, float di } } -glm::vec3 LaserPointer::getPickedObjectNormal(const PickResultPointer& pickResult) { +glm::vec3 LaserPointer::getPickedObjectNormal(const PickResultPointer& pickResult) const { auto rayPickResult = std::static_pointer_cast(pickResult); - return (rayPickResult ? rayPickResult->surfaceNormal : glm::vec3()); + return (rayPickResult ? rayPickResult->surfaceNormal : glm::vec3(0.0f)); } -IntersectionType LaserPointer::getPickedObjectType(const PickResultPointer& pickResult) { +IntersectionType LaserPointer::getPickedObjectType(const PickResultPointer& pickResult) const { auto rayPickResult = std::static_pointer_cast(pickResult); return (rayPickResult ? rayPickResult->type : IntersectionType::NONE); } -QUuid LaserPointer::getPickedObjectID(const PickResultPointer& pickResult) { +QUuid LaserPointer::getPickedObjectID(const PickResultPointer& pickResult) const { auto rayPickResult = std::static_pointer_cast(pickResult); return (rayPickResult ? rayPickResult->objectID : QUuid()); } diff --git a/interface/src/raypick/LaserPointer.h b/interface/src/raypick/LaserPointer.h index e6d493d449..95a5bccc6c 100644 --- a/interface/src/raypick/LaserPointer.h +++ b/interface/src/raypick/LaserPointer.h @@ -47,11 +47,11 @@ public: protected: void editRenderStatePath(const std::string& state, const QVariant& pathProps) override; - glm::vec3 getPickOrigin(const PickResultPointer& pickResult) override; - glm::vec3 getPickEnd(const PickResultPointer& pickResult, float distance) override; - glm::vec3 getPickedObjectNormal(const PickResultPointer& pickResult) override; - IntersectionType getPickedObjectType(const PickResultPointer& pickResult) override; - QUuid getPickedObjectID(const PickResultPointer& pickResult) override; + glm::vec3 getPickOrigin(const PickResultPointer& pickResult) const override; + glm::vec3 getPickEnd(const PickResultPointer& pickResult, float distance) const override; + glm::vec3 getPickedObjectNormal(const PickResultPointer& pickResult) const override; + IntersectionType getPickedObjectType(const PickResultPointer& pickResult) const override; + QUuid getPickedObjectID(const PickResultPointer& pickResult) const override; void setVisualPickResultInternal(PickResultPointer pickResult, IntersectionType type, const QUuid& id, const glm::vec3& intersection, float distance, const glm::vec3& surfaceNormal) override; diff --git a/interface/src/raypick/ParabolaPick.h b/interface/src/raypick/ParabolaPick.h index 03ee1a8da1..99a42a5380 100644 --- a/interface/src/raypick/ParabolaPick.h +++ b/interface/src/raypick/ParabolaPick.h @@ -20,7 +20,7 @@ public: ParabolaPickResult(const QVariantMap& pickVariant) : PickResult(pickVariant) {} ParabolaPickResult(const IntersectionType type, const QUuid& objectID, float distance, float parabolicDistance, const glm::vec3& intersection, const PickParabola& parabola, const glm::vec3& surfaceNormal = glm::vec3(NAN), const QVariantMap& extraInfo = QVariantMap()) : - PickResult(parabola.toVariantMap()), type(type), intersects(type != NONE), objectID(objectID), distance(distance), parabolicDistance(parabolicDistance), intersection(intersection), surfaceNormal(surfaceNormal), extraInfo(extraInfo) { + PickResult(parabola.toVariantMap()), extraInfo(extraInfo), objectID(objectID), intersection(intersection), surfaceNormal(surfaceNormal), type(type), distance(distance), parabolicDistance(parabolicDistance), intersects(type != NONE) { } ParabolaPickResult(const ParabolaPickResult& parabolaPickResult) : PickResult(parabolaPickResult.pickVariant) { @@ -34,14 +34,14 @@ public: extraInfo = parabolaPickResult.extraInfo; } - IntersectionType type { NONE }; - bool intersects { false }; + QVariantMap extraInfo; QUuid objectID; - float distance { FLT_MAX }; - float parabolicDistance { FLT_MAX }; glm::vec3 intersection { NAN }; glm::vec3 surfaceNormal { NAN }; - QVariantMap extraInfo; + IntersectionType type { NONE }; + float distance { FLT_MAX }; + float parabolicDistance { FLT_MAX }; + bool intersects { false }; virtual QVariantMap toVariantMap() const override { QVariantMap toReturn; diff --git a/interface/src/raypick/ParabolaPointer.cpp b/interface/src/raypick/ParabolaPointer.cpp index 24ac9d956f..9371995a2a 100644 --- a/interface/src/raypick/ParabolaPointer.cpp +++ b/interface/src/raypick/ParabolaPointer.cpp @@ -62,12 +62,12 @@ void ParabolaPointer::editRenderStatePath(const std::string& state, const QVaria } } -glm::vec3 ParabolaPointer::getPickOrigin(const PickResultPointer& pickResult) { +glm::vec3 ParabolaPointer::getPickOrigin(const PickResultPointer& pickResult) const { auto parabolaPickResult = std::static_pointer_cast(pickResult); - return (parabolaPickResult ? vec3FromVariant(parabolaPickResult->pickVariant["origin"]) : glm::vec3()); + return (parabolaPickResult ? vec3FromVariant(parabolaPickResult->pickVariant["origin"]) : glm::vec3(0.0f)); } -glm::vec3 ParabolaPointer::getPickEnd(const PickResultPointer& pickResult, float distance) { +glm::vec3 ParabolaPointer::getPickEnd(const PickResultPointer& pickResult, float distance) const { auto parabolaPickResult = std::static_pointer_cast(pickResult); if (distance > 0.0f) { PickParabola pick = PickParabola(parabolaPickResult->pickVariant); @@ -77,17 +77,17 @@ glm::vec3 ParabolaPointer::getPickEnd(const PickResultPointer& pickResult, float } } -glm::vec3 ParabolaPointer::getPickedObjectNormal(const PickResultPointer& pickResult) { +glm::vec3 ParabolaPointer::getPickedObjectNormal(const PickResultPointer& pickResult) const { auto parabolaPickResult = std::static_pointer_cast(pickResult); - return (parabolaPickResult ? parabolaPickResult->surfaceNormal : glm::vec3()); + return (parabolaPickResult ? parabolaPickResult->surfaceNormal : glm::vec3(0.0f)); } -IntersectionType ParabolaPointer::getPickedObjectType(const PickResultPointer& pickResult) { +IntersectionType ParabolaPointer::getPickedObjectType(const PickResultPointer& pickResult) const { auto parabolaPickResult = std::static_pointer_cast(pickResult); return (parabolaPickResult ? parabolaPickResult->type : IntersectionType::NONE); } -QUuid ParabolaPointer::getPickedObjectID(const PickResultPointer& pickResult) { +QUuid ParabolaPointer::getPickedObjectID(const PickResultPointer& pickResult) const { auto parabolaPickResult = std::static_pointer_cast(pickResult); return (parabolaPickResult ? parabolaPickResult->objectID : QUuid()); } diff --git a/interface/src/raypick/ParabolaPointer.h b/interface/src/raypick/ParabolaPointer.h index 4cabbc5a25..ee4977e1e4 100644 --- a/interface/src/raypick/ParabolaPointer.h +++ b/interface/src/raypick/ParabolaPointer.h @@ -101,11 +101,11 @@ public: protected: void editRenderStatePath(const std::string& state, const QVariant& pathProps) override; - glm::vec3 getPickOrigin(const PickResultPointer& pickResult) override; - glm::vec3 getPickEnd(const PickResultPointer& pickResult, float distance) override; - glm::vec3 getPickedObjectNormal(const PickResultPointer& pickResult) override; - IntersectionType getPickedObjectType(const PickResultPointer& pickResult) override; - QUuid getPickedObjectID(const PickResultPointer& pickResult) override; + glm::vec3 getPickOrigin(const PickResultPointer& pickResult) const override; + glm::vec3 getPickEnd(const PickResultPointer& pickResult, float distance) const override; + glm::vec3 getPickedObjectNormal(const PickResultPointer& pickResult) const override; + IntersectionType getPickedObjectType(const PickResultPointer& pickResult) const override; + QUuid getPickedObjectID(const PickResultPointer& pickResult) const override; void setVisualPickResultInternal(PickResultPointer pickResult, IntersectionType type, const QUuid& id, const glm::vec3& intersection, float distance, const glm::vec3& surfaceNormal) override; diff --git a/interface/src/raypick/PathPointer.cpp b/interface/src/raypick/PathPointer.cpp index 475d2abbc7..685611d77b 100644 --- a/interface/src/raypick/PathPointer.cpp +++ b/interface/src/raypick/PathPointer.cpp @@ -79,8 +79,6 @@ void PathPointer::setLockEndUUID(const QUuid& objectID, const bool isOverlay, co }); } -#include "ParabolaPick.h" - PickResultPointer PathPointer::getVisualPickResult(const PickResultPointer& pickResult) { PickResultPointer visualPickResult = pickResult; glm::vec3 origin = getPickOrigin(pickResult); diff --git a/interface/src/raypick/PathPointer.h b/interface/src/raypick/PathPointer.h index b0a3444fca..44c1b7f82b 100644 --- a/interface/src/raypick/PathPointer.h +++ b/interface/src/raypick/PathPointer.h @@ -121,11 +121,11 @@ protected: Pointer::Buttons getPressedButtons(const PickResultPointer& pickResult) override; PickResultPointer getVisualPickResult(const PickResultPointer& pickResult) override; - virtual glm::vec3 getPickOrigin(const PickResultPointer& pickResult) = 0; - virtual glm::vec3 getPickEnd(const PickResultPointer& pickResult, float distance = 0.0f) = 0; - virtual glm::vec3 getPickedObjectNormal(const PickResultPointer& pickResult) = 0; - virtual IntersectionType getPickedObjectType(const PickResultPointer& pickResult) = 0; - virtual QUuid getPickedObjectID(const PickResultPointer& pickResult) = 0; + virtual glm::vec3 getPickOrigin(const PickResultPointer& pickResult) const = 0; + virtual glm::vec3 getPickEnd(const PickResultPointer& pickResult, float distance = 0.0f) const = 0; + virtual glm::vec3 getPickedObjectNormal(const PickResultPointer& pickResult) const = 0; + virtual IntersectionType getPickedObjectType(const PickResultPointer& pickResult) const = 0; + virtual QUuid getPickedObjectID(const PickResultPointer& pickResult) const = 0; virtual void setVisualPickResultInternal(PickResultPointer pickResult, IntersectionType type, const QUuid& id, const glm::vec3& intersection, float distance, const glm::vec3& surfaceNormal) = 0; diff --git a/interface/src/raypick/RayPick.h b/interface/src/raypick/RayPick.h index 6bdc2cb5b0..9410d39c1a 100644 --- a/interface/src/raypick/RayPick.h +++ b/interface/src/raypick/RayPick.h @@ -19,7 +19,7 @@ public: RayPickResult() {} RayPickResult(const QVariantMap& pickVariant) : PickResult(pickVariant) {} RayPickResult(const IntersectionType type, const QUuid& objectID, float distance, const glm::vec3& intersection, const PickRay& searchRay, const glm::vec3& surfaceNormal = glm::vec3(NAN), const QVariantMap& extraInfo = QVariantMap()) : - PickResult(searchRay.toVariantMap()), type(type), intersects(type != NONE), objectID(objectID), distance(distance), intersection(intersection), surfaceNormal(surfaceNormal), extraInfo(extraInfo) { + PickResult(searchRay.toVariantMap()), extraInfo(extraInfo), objectID(objectID), intersection(intersection), surfaceNormal(surfaceNormal), type(type), distance(distance), intersects(type != NONE) { } RayPickResult(const RayPickResult& rayPickResult) : PickResult(rayPickResult.pickVariant) { @@ -32,13 +32,13 @@ public: extraInfo = rayPickResult.extraInfo; } - IntersectionType type { NONE }; - bool intersects { false }; + QVariantMap extraInfo; QUuid objectID; - float distance { FLT_MAX }; glm::vec3 intersection { NAN }; glm::vec3 surfaceNormal { NAN }; - QVariantMap extraInfo; + IntersectionType type { NONE }; + float distance { FLT_MAX }; + bool intersects { false }; virtual QVariantMap toVariantMap() const override { QVariantMap toReturn;