39 #ifndef vpWireFrameSimulator_HH
40 #define vpWireFrameSimulator_HH
53 #include <visp3/core/vpConfig.h>
54 #include <visp3/core/vpDisplay.h>
55 #include <visp3/core/vpHomogeneousMatrix.h>
56 #include <visp3/core/vpImage.h>
57 #ifdef VISP_BUILD_DEPRECATED_FUNCTIONS
58 #include <visp3/core/vpList.h>
60 #include <visp3/core/vpImagePoint.h>
61 #include <visp3/robot/vpImageSimulator.h>
62 #include <visp3/robot/vpWireFrameSimulatorTypes.h>
216 } vpSceneDesiredObject;
218 typedef enum { CT_LINE, CT_POINT } vpCameraTrajectoryDisplayType;
281 std::string scene_dir;
295 cameraTrajectory.clear();
302 void displayTrajectory(
const vpImage<vpRGBa> &I,
const std::list<vpHomogeneousMatrix> &list_cMo,
316 if ((std::fabs(px_ext - 1.) >
vpMath::maximum(px_ext, 1.) * std::numeric_limits<double>::epsilon()) &&
317 (std::fabs(py_ext - 1) >
vpMath::maximum(py_ext, 1.) * std::numeric_limits<double>::epsilon()))
335 if ((std::fabs(px_ext - 1.) >
vpMath::maximum(px_ext, 1.) * std::numeric_limits<double>::epsilon()) &&
336 (std::fabs(py_ext - 1) >
vpMath::maximum(py_ext, 1.) * std::numeric_limits<double>::epsilon()))
368 if ((std::fabs(px_int - 1.) >
vpMath::maximum(px_int, 1.) * std::numeric_limits<double>::epsilon()) &&
369 (std::fabs(py_int - 1) >
vpMath::maximum(py_int, 1.) * std::numeric_limits<double>::epsilon()))
387 if ((std::fabs(px_int - 1.) >
vpMath::maximum(px_int, 1.) * std::numeric_limits<double>::epsilon()) &&
388 (std::fabs(py_int - 1) >
vpMath::maximum(py_int, 1.) * std::numeric_limits<double>::epsilon()))
415 for (std::list<vpHomogeneousMatrix>::const_iterator it = poseList.begin(); it != poseList.end(); ++it) {
416 cMo_history.push_back(rotz * (*it));
433 void get_fMo_History(std::list<vpHomogeneousMatrix> &fMo_history) { fMo_history = fMoList; }
435 void initScene(
const vpSceneObject &obj,
const vpSceneDesiredObject &desiredObject);
436 void initScene(
const char *obj,
const char *desiredObject);
437 void initScene(
const vpSceneObject &obj);
438 void initScene(
const char *obj);
440 void initScene(
const vpSceneObject &obj,
const vpSceneDesiredObject &desiredObject,
441 const std::list<vpImageSimulator> &imObj);
442 void initScene(
const char *obj,
const char *desiredObject,
const std::list<vpImageSimulator> &imObj);
443 void initScene(
const vpSceneObject &obj,
const std::list<vpImageSimulator> &imObj);
444 void initScene(
const char *obj,
const std::list<vpImageSimulator> &imObj);
459 this->cMo = rotz * cMo_;
460 fMc = fMo * this->cMo.
inverse();
471 this->fMc = fMc_ * rotz;
472 cMo = this->fMc.
inverse() * fMo;
500 this->camTrajType = camTraj_type;
549 this->camMf = rotz * cam_Mf;
552 this->camMf2.
buildFrom(0, 0, T[2], 0, 0, 0);
553 f2Mf = camMf2.
inverse() * this->camMf;
554 extCamChanged =
true;