39 #include <gtest/gtest.h>
40 #include <Eigen/Dense>
100 const Real h = 0.0025;
103 const Vector3<S>
half_size{w / 2, d / 2, h / 2};
104 const Real
r = 0.0015;
105 auto sphere_geometry = std::make_shared<fcl::Sphere<S>>(
r);
106 auto box_geometry = std::make_shared<fcl::Box<S>>(w, d, h);
116 const Real target_depth =
r * 0.5;
118 const Real sz = h / 2 +
r - target_depth;
119 const Real pz = h / 2 - target_depth / 2;
149 const std::vector<Real> x_values{
152 const std::vector<Real> y_values{
155 for (Real sx : x_values) {
156 for (Real sy : y_values ) {
158 X_WS.translation() << sx, sy, sz;
161 auto evaluate_collision = [&collision_request, &X_WS](
167 std::size_t contact_count =
168 fcl::collide(s1, s2, collision_request, collision_result);
172 std::vector<fcl::Contact<S>> contacts;
178 <<
"Sphere at: " << X_WS.translation().transpose();
183 <<
"Sphere at: " << X_WS.translation().transpose();
186 <<
"Sphere at: " << X_WS.translation().transpose();
188 EXPECT_TRUE(
false) <<
"No contacts reported for sphere at: "
189 << X_WS.translation().transpose();
213 int main(
int argc,
char* argv[]) {
214 ::testing::InitGoogleTest(&argc, argv);
215 return RUN_ALL_TESTS();