10 #include <CTraitsTest.h> 11 #include <gtest/gtest.h> 15 #include <Eigen/Dense> 17 template class mrpt::CTraitsTest<mrpt::poses::CPose3DInterpolator>;
19 TEST(CPose3DInterpolator, interp)
32 pose_path.
insert(t0, TPose3D(1., 2., 3., 30.0_deg, .0_deg, .0_deg));
36 1. + 3., 2. + 4., 3. + 5.,
DEG2RAD(30.0 + 20.0), .0_deg, .0_deg));
43 const TPose3D interp_good(
44 1. + 1.5, 2. + 2.0, 3. + 2.5,
DEG2RAD(30.0 + 10.0), .0_deg, .0_deg);
47 (
CPose3D(interp_good).getHomogeneousMatrixVal<CMatrixDouble44>() -
48 CPose3D(interp).getHomogeneousMatrixVal<CMatrixDouble44>())
std::chrono::duration< rep, period > duration
EXPECT_TRUE(mrpt::system::fileExists(ini_fil))
static time_point now() noexcept
Returns the current time using the currently selected Clock source.
constexpr double DEG2RAD(const double x)
Degrees to radians.
CONTAINER::Scalar sum(const CONTAINER &v)
Computes the sum of all the elements.
TEST(CPose3DInterpolator, interp)
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
pose_t & interpolate(const mrpt::Clock::time_point &t, pose_t &out_interp, bool &out_valid_interp) const
Returns the pose at a given time, or interpolates using splines if there is not an exact match...
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Lightweight 3D pose (three spatial coordinates, plus three angular coordinates).
This class stores a time-stamped trajectory in SE(3) (CPose3D poses).
void insert(const mrpt::Clock::time_point &t, const pose_t &p)
Inserts a new pose in the sequence.
EXPECT_NEAR(out.cam_params.rightCameraPose.x, 0.1194, 0.005)
CMatrixFixed< double, 4, 4 > CMatrixDouble44