From 3c4f6037b90069327ab43d998f6732dd93f5ebd0 Mon Sep 17 00:00:00 2001 From: jpan <jpan@253336fb-580f-4252-a368-f3cef5a2a82b> Date: Sun, 4 Sep 2011 20:08:25 +0000 Subject: [PATCH] git-svn-id: https://kforge.ros.org/fcl/fcl_ros@21 253336fb-580f-4252-a368-f3cef5a2a82b --- trunk/fcl/src/collision.cpp | 7 ++++++- trunk/fcl/test/test_core_broad_phase.cpp | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/trunk/fcl/src/collision.cpp b/trunk/fcl/src/collision.cpp index 54ee44ba..fc129af2 100644 --- a/trunk/fcl/src/collision.cpp +++ b/trunk/fcl/src/collision.cpp @@ -43,7 +43,6 @@ namespace fcl { - static CollisionFunctionMatrix CollisionFunctionLookTable; int collide(const CollisionObject* o1, const CollisionObject* o2, @@ -62,6 +61,12 @@ int collide(const CollisionObject* o1, const CollisionObject* o2, const OBJECT_TYPE object_type2 = o2->getObjectType(); const NODE_TYPE node_type2 = o2->getNodeType(); + if(!CollisionFunctionLookTable.collision_matrix[node_type1][node_type2]) + { + std::cerr << "Warning: collision function between node type " << node_type1 << " and node type " << node_type2 << " is not supported"<< std::endl; + return 0; + } + if(object_type1 == OT_GEOM && object_type2 == OT_GEOM) { diff --git a/trunk/fcl/test/test_core_broad_phase.cpp b/trunk/fcl/test/test_core_broad_phase.cpp index 64b585aa..5a6f91af 100644 --- a/trunk/fcl/test/test_core_broad_phase.cpp +++ b/trunk/fcl/test/test_core_broad_phase.cpp @@ -126,6 +126,7 @@ TEST(test_core, broad_phase_collision) ASSERT_TRUE(query_res1 == query_res4); } + for(unsigned int i = 0; i < env.size(); ++i) delete env[i]; for(unsigned int i = 0; i < query.size(); ++i) -- GitLab