#include <visp3/core/vpConfig.h>
#if defined(VISP_HAVE_CATCH2) && (VISP_HAVE_DATASET_VERSION >= 0x030400)
#include <visp3/core/vpIoTools.h>
#include <visp3/mbt/vpMbGenericTracker.h>
#include <catch_amalgamated.hpp>
#ifdef ENABLE_VISP_NAMESPACE
#endif
TEST_CASE("vpMbGenericTracker load CAO model Linux line ending", "[vpMbGenericTracker CAO parsing]")
{
const bool verbose = true;
REQUIRE_NOTHROW(tracker.
loadModel(cao_filename, verbose));
std::list<vpMbtDistanceCylinder *> cylinders;
CHECK(cylinders.size() == 1);
std::list<vpMbtDistanceCircle *> circles;
CHECK(circles.size() == 1);
}
TEST_CASE("vpMbGenericTracker load CAO model Windows line ending", "[vpMbGenericTracker CAO parsing]")
{
const std::string cao_filename =
const bool verbose = true;
REQUIRE_NOTHROW(tracker.
loadModel(cao_filename, verbose));
std::list<vpMbtDistanceCylinder *> cylinders;
CHECK(cylinders.size() == 1);
std::list<vpMbtDistanceCircle *> circles;
CHECK(circles.size() == 1);
}
int main(int argc, char *argv[])
{
Catch::Session session;
session.applyCommandLine(argc, argv);
int numFailed = session.run();
return numFailed;
}
#else
#include <iostream>
int main() { return EXIT_SUCCESS; }
#endif
Real-time 6D object pose tracking using its CAD model.
virtual void getLcircle(std::list< vpMbtDistanceCircle * > &circlesList, unsigned int level=0) const
virtual void getLcylinder(std::list< vpMbtDistanceCylinder * > &cylindersList, unsigned int level=0) const
virtual void loadModel(const std::string &modelFile, bool verbose=false, const vpHomogeneousMatrix &T=vpHomogeneousMatrix()) VP_OVERRIDE