9 #include <boost/test/unit_test.hpp>
28 auto cylinderBounds = std::make_shared<CylinderBounds>(3, 10);
30 auto cylinder = Surface::makeShared<CylinderSurface>(Transform3D::Identity(),
32 auto cylinder2 = Surface::makeShared<CylinderSurface>(Transform3D::Identity(),
36 cov << 0.04, 0, 0, 0.1;
38 cylinder, {}, std::move(cov), -0.1, 0.45);
45 cylinder2, {}, std::move(cov), -0.1, 0.45);
52 Surface::makeShared<CylinderSurface>(Transform3D::Identity(), 3, 10);
55 cov << 0.04, 0, 0, 0.1;
57 cylinder, {}, std::move(cov), -0.1, 0.45);
66 m2(cylinder, {}, std::move(cov3), -0.1, 0.45, 42);
74 Surface::makeShared<CylinderSurface>(Transform3D::Identity(), 3, 10);
77 cov << 0.04, 0, 0, 0.1;
79 cylinder, {}, std::move(cov), -0.1, 0.45);
84 BOOST_CHECK_EQUAL(&msl.referenceSurface(), cylinder.get());
87 BOOST_CHECK_EQUAL(msl, msl2);
90 cylinder, {}, std::move(cov), -0.1, 0.45);
93 BOOST_CHECK_NE(msl, msl3);
95 BOOST_CHECK_EQUAL(&*msl, &fm);
103 const auto& parFullConst = parFull;
104 const auto& covFullConst = covFull;
106 for (BoundVector::Index
dim = 1;
dim <= parFull.size(); ++
dim) {
108 BOOST_CHECK_EQUAL(param, parFull.head(
dim));
109 BOOST_CHECK_EQUAL(
cov, covFull.topLeftCorner(
dim,
dim));
112 [&](
const auto& param,
const auto&
cov) {
113 BOOST_CHECK_EQUAL(param, parFull.head(
dim));
114 BOOST_CHECK_EQUAL(
cov, covFull.topLeftCorner(
dim,
dim));
117 [&](
const auto& param,
const auto&
cov) {
118 BOOST_CHECK_EQUAL(param, parFullConst.head(
dim));
119 BOOST_CHECK_EQUAL(
cov,
120 covFullConst.topLeftCorner(
dim,
dim));