37 #include <gtest/gtest.h>
40 #include "fcl/config.h"
66 v1.array() *= v3.array();
67 EXPECT_TRUE(v1.array().isApprox(v2.array() * v3.array()));
68 v1.array() /= v3.array();
70 v1.array() /= v3.array();
71 EXPECT_TRUE(v1.array().isApprox(v2.array() / v3.array()));
72 v1.array() *= v3.array();
98 EXPECT_TRUE(std::abs(v1.squaredNorm() - 50.0) < 1e-5);
99 EXPECT_TRUE(std::abs(v1.norm() - sqrt(50.0)) < 1e-5);
100 EXPECT_TRUE(v1.normalized().isApprox(v1 / v1.norm()));
111 test_vec_test_basic_vector<double>();
114 template <
typename S>
118 detail::morton_functor<S, std::bitset<30>> F1(bbox);
119 detail::morton_functor<S, std::bitset<60>> F2(bbox);
120 detail::morton_functor<S, uint64> F3(bbox);
121 detail::morton_functor<S, uint32> F4(bbox);
132 test_morton<double>();
136 template <
typename S>
194 rss.
axis.col(0).isApprox(
Vector3<S>(-sqrt(2.0)/2.0, sqrt(2.0)/2.0, 0)) ||
195 rss.
axis.col(0).isApprox(
Vector3<S>(sqrt(2.0)/2.0, -sqrt(2.0)/2.0, 0)));
213 EXPECT_GE(rss.
depth(), 0.5);
217 template <
typename S>
255 template <
typename S>
278 rss2.
To << -1, -1, 2.5;
284 rss2.
axis << -1, 0, 0,
288 rss2.
To << 0, 0, 2.5;
293 template <
typename S>
311 test_rss_fit<double>();
316 test_rss_conversion<double>();
321 test_rss_distance<double>();
326 test_rss_position<double>();
335 int main(
int argc,
char* argv[])
337 ::testing::InitGoogleTest(&argc, argv);
338 return RUN_ALL_TESTS();