20 #include <visp/vpFeatureBuilder.h>
21 #include <visp/vpFeatureDepth.h>
22 #include <visp/vpFeaturePoint.h>
23 #include <visp/vpHomogeneousMatrix.h>
24 #include <visp/vpPlot.h>
25 #include <visp/vpServo.h>
26 #include <visp/vpSimulatorPioneer.h>
27 #include <visp/vpVelocityTwistMatrix.h>
37 cMo[1][3] = cdMo[1][3];
70 double Z = point.
get_Z();
71 double Zd = cdMo[2][3];
76 #ifdef VISP_HAVE_DISPLAY
78 vpPlot graph(3, 800, 500, 400, 10,
"Curves...");
84 graph.setTitle(0,
"Velocities");
85 graph.setTitle(1,
"Error s-s*");
86 graph.setTitle(2,
"Depth");
87 graph.setLegend(0, 0,
"vx");
88 graph.setLegend(0, 1,
"wz");
89 graph.setLegend(1, 0,
"x");
90 graph.setLegend(1, 1,
"log(Z/Z*)");
91 graph.setLegend(2, 0,
"Z");
117 #ifdef VISP_HAVE_DISPLAY
118 graph.plot(0, iter, v);
119 graph.plot(1, iter, task.
getError());
120 graph.plot(2, 0, iter, Z);
126 std::cout <<
"Reached a small error. We stop the loop... " << std::endl;
130 #ifdef VISP_HAVE_DISPLAY
131 graph.saveData(0,
"./v2.dat");
132 graph.saveData(1,
"./error2.dat");
134 const char *legend =
"Click to quit...";