From 0eef8bf133ba96c4a00b3fe854db8345d382a7e5 Mon Sep 17 00:00:00 2001
From: Mansard <nmansard@laas.fr>
Date: Thu, 8 Sep 2016 10:34:27 +0200
Subject: [PATCH] [C++] Geom: remove resetDistance and reset the distanceResult
 in computeDistance.

---
 src/algorithm/geometry.hxx | 7 ++++---
 src/multibody/geometry.hpp | 5 -----
 src/multibody/geometry.hxx | 4 ----
 3 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/src/algorithm/geometry.hxx b/src/algorithm/geometry.hxx
index 08fec67c8..298aa9454 100644
--- a/src/algorithm/geometry.hxx
+++ b/src/algorithm/geometry.hxx
@@ -64,12 +64,12 @@ namespace se3
   {
     assert( pairId < geomModel.collisionPairs.size() );
     const CollisionPair & pair = geomModel.collisionPairs[pairId];
-    fcl::CollisionResult& collisionResult = geomData.collisionResults[pairId];
 
-    assert( pairId      < geomData.distanceResults.size() );
+    assert( pairId      < geomData.collisionResults.size() );
     assert( pair.first  < geomData.collisionObjects.size() );
     assert( pair.second < geomData.collisionObjects.size() );
 
+    fcl::CollisionResult& collisionResult = geomData.collisionResults[pairId];
     collisionResult.clear();
     fcl::collide (&geomData.collisionObjects[pair.first],
                   &geomData.collisionObjects[pair.second],
@@ -127,7 +127,8 @@ namespace se3
     assert( pairId      < geomData.distanceResults.size() );
     assert( pair.first  < geomData.collisionObjects.size() );
     assert( pair.second < geomData.collisionObjects.size() );
-    
+
+    geomData.distanceResults[pairId].clear();
     fcl::distance ( &geomData.collisionObjects[pair.first],
                     &geomData.collisionObjects[pair.second],
                     geomData.distanceRequest,
diff --git a/src/multibody/geometry.hpp b/src/multibody/geometry.hpp
index dfb37c2f4..239b4d229 100644
--- a/src/multibody/geometry.hpp
+++ b/src/multibody/geometry.hpp
@@ -258,11 +258,6 @@ namespace se3
     /// \sa activateCollisionPair
     void deactivateCollisionPair(const PairIndex pairId);
 
-    /// Reset the vector distanceResults.
-    /// TODO: should this be called automatically before calling computeDistance?
-    /// TODO: should we implement the same for collisions?
-    void resetDistances();
-
 #endif //WITH_HPP_FCL
     friend std::ostream & operator<<(std::ostream & os, const GeometryData & geomData);
     
diff --git a/src/multibody/geometry.hxx b/src/multibody/geometry.hxx
index 3fd502c43..619730cfa 100644
--- a/src/multibody/geometry.hxx
+++ b/src/multibody/geometry.hxx
@@ -238,10 +238,6 @@ namespace se3
     activeCollisionPairs[pairId] = false;
   }
 
-  inline void GeometryData::resetDistances()
-  {
-    std::fill(distanceResults.begin(), distanceResults.end(), fcl::DistanceResult() );
-  }
 #endif //WITH_HPP_FCL
 } // namespace se3
 
-- 
GitLab