43 #include <gtest/gtest.h> 51 #define NODE_CASE(node) case node: \ 112 template <
typename Solver>
113 void ConfirmSupportedGeometryForSolver() {
120 const CollisionFunctionMatrix<Solver> matrix_struct;
121 const auto& matrix = matrix_struct.collision_matrix;
126 EXPECT_NE(matrix[g1][g2],
nullptr) <<
"(" << g1 <<
", " << g2 <<
")";
132 EXPECT_NE(matrix[bv][bv],
nullptr) <<
"(" << bv <<
", " << bv <<
")";
134 EXPECT_NE(matrix[bv][g],
nullptr) <<
"(" << bv <<
", " << g <<
")";
141 EXPECT_NE(matrix[oct][oct],
nullptr) <<
"(" << oct <<
", " << oct <<
")";
143 EXPECT_NE(matrix[oct][g],
nullptr) <<
"(" << oct <<
", " << g <<
")";
144 EXPECT_NE(matrix[g][oct],
nullptr) <<
"(" << g <<
", " << oct <<
")";
147 EXPECT_NE(matrix[oct][bv],
nullptr) <<
"(" << oct <<
", " << bv <<
")";
148 EXPECT_NE(matrix[bv][oct],
nullptr) <<
"(" << bv <<
", " << oct <<
")";
153 GTEST_TEST(CollisionFuncMatrix, LibCccdSolverSupport) {
154 ConfirmSupportedGeometryForSolver<GJKSolver_libccd<double>>();
157 GTEST_TEST(CollisionFuncMatrix, IndepSolverSupport) {
158 ConfirmSupportedGeometryForSolver<GJKSolver_indep<double>>();
166 int main(
int argc,
char *argv[]) {
167 ::testing::InitGoogleTest(&argc, argv);
168 return RUN_ALL_TESTS();
NODE_TYPE
traversal node type: bounding volume (AABB, OBB, RSS, kIOS, OBBRSS, KDOP16, KDOP18, kDOP24), basic shape (box, sphere, ellipsoid, capsule, cone, cylinder, convex, plane, halfspace, triangle), and octree
std::ostream & operator<<(std::ostream &out, const NODE_TYPE &node)
int main(int argc, char *argv[])
GTEST_TEST(FCL_GJK_EPA, faceNormalPointingOutward)