From 2cf8da3c7168a82712131d534e3b300535a7dc8a Mon Sep 17 00:00:00 2001 From: Lucile Remigy <lucile.remigy@epitech.eu> Date: Tue, 15 Oct 2019 15:18:08 +0200 Subject: [PATCH] add something which was deleted --- src/traversal/traversal_node_octree.h | 34 +++++++++++++++++++++++++++ src/traversal/traversal_node_setup.h | 4 ++-- src/traversal/traversal_recurse.cpp | 1 - 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/traversal/traversal_node_octree.h b/src/traversal/traversal_node_octree.h index 3042d43b..c92ddfc2 100644 --- a/src/traversal/traversal_node_octree.h +++ b/src/traversal/traversal_node_octree.h @@ -926,6 +926,40 @@ public: const OcTreeSolver* otsolver; }; +/// @brief Traversal node for octree distance +class OcTreeDistanceTraversalNode : public DistanceTraversalNodeBase +{ +public: + OcTreeDistanceTraversalNode() + { + model1 = NULL; + model2 = NULL; + + otsolver = NULL; + } + + + FCL_REAL BVDistanceLowerBound(int, int) const + { + return -1; + } + + bool BVDistanceLowerBound(int, int, FCL_REAL&) const + { + return false; + } + + void leafComputeDistance(int, int) const + { + otsolver->OcTreeDistance(model1, model2, tf1, tf2, request, *result); + } + + const OcTree* model1; + const OcTree* model2; + + const OcTreeSolver* otsolver; +}; + /// @brief Traversal node for shape-octree collision template<typename S> class ShapeOcTreeCollisionTraversalNode : public CollisionTraversalNodeBase diff --git a/src/traversal/traversal_node_setup.h b/src/traversal/traversal_node_setup.h index 4dc10681..47b00a9a 100644 --- a/src/traversal/traversal_node_setup.h +++ b/src/traversal/traversal_node_setup.h @@ -62,7 +62,7 @@ inline bool initialize(OcTreeCollisionTraversalNode& node, const OcTree& model2, const Transform3f& tf2, const OcTreeSolver* otsolver, CollisionResult& result) - +{ node.result = &result; node.model1 = &model1; @@ -77,7 +77,7 @@ inline bool initialize(OcTreeCollisionTraversalNode& node, } /// @brief Initialize traversal node for distance between two octrees, given current object transform -inline bool initialize(OcTreeDistanceTraversalNode& node, +bool initialize(OcTreeDistanceTraversalNode& node, const OcTree& model1, const Transform3f& tf1, const OcTree& model2, const Transform3f& tf2, const OcTreeSolver* otsolver, diff --git a/src/traversal/traversal_recurse.cpp b/src/traversal/traversal_recurse.cpp index 14a232cd..0a139b35 100644 --- a/src/traversal/traversal_recurse.cpp +++ b/src/traversal/traversal_recurse.cpp @@ -89,7 +89,6 @@ void collisionRecurse(CollisionTraversalNodeBase* node, int b1, int b2, collisionRecurse(node, b1, c2, front_list, sqrDistLowerBound2); sqrDistLowerBound = std::min (sqrDistLowerBound1, sqrDistLowerBound2); } - return; } void collisionNonRecurse(CollisionTraversalNodeBase* node, -- GitLab