42 #include <visp/vpConfig.h>
46 #if defined(WIN32) || defined(VISP_HAVE_PTHREAD)
47 #include <visp/vpRobotSimulator.h>
48 #include <visp/vpSimulatorViper850.h>
59 #if defined(VISP_HAVE_X11) || defined(VISP_HAVE_GDI) || defined(VISP_HAVE_OPENCV) || defined(VISP_HAVE_D3D9) || defined(VISP_HAVE_GTK)
86 #if defined(VISP_HAVE_X11) || defined(VISP_HAVE_GDI) || defined(VISP_HAVE_OPENCV) || defined(VISP_HAVE_D3D9) || defined(VISP_HAVE_GTK)
88 this->display.
init(
I, 0, 0,
"The External view");
126 free_Bound_scene (&(this->
camera));
130 free_Bound_scene (&(this->
camera));
149 free_Bound_scene (&(this->
camera));
153 free_Bound_scene (&(this->
camera));
170 free_Bound_scene (&(this->
camera));
174 free_Bound_scene (&(this->
camera));
191 free_Bound_scene (&(this->
camera));
195 free_Bound_scene (&(this->
camera));
232 float o44c[4][4],o44cd[4][4],x,y,z;
233 Matrix
id = IDENTITY_MATRIX;
240 vp2jlc_matrix(cMo.inverse(),o44c);
245 add_vwstack (
"start",
"cop", o44c[3][0],o44c[3][1],o44c[3][2]);
246 x = o44c[2][0] + o44c[3][0];
247 y = o44c[2][1] + o44c[3][1];
248 z = o44c[2][2] + o44c[3][2];
249 add_vwstack (
"start",
"vrp", x,y,z);
250 add_vwstack (
"start",
"vpn", o44c[2][0],o44c[2][1],o44c[2][2]);
251 add_vwstack (
"start",
"vup", o44c[1][0],o44c[1][1],o44c[1][2]);
252 add_vwstack (
"start",
"window", -u, u, -v, v);
256 add_vwstack (
"start",
"cop", o44cd[3][0],o44cd[3][1],o44cd[3][2]);
257 x = o44cd[2][0] + o44cd[3][0];
258 y = o44cd[2][1] + o44cd[3][1];
259 z = o44cd[2][2] + o44cd[3][2];
260 add_vwstack (
"start",
"vrp", x,y,z);
261 add_vwstack (
"start",
"vpn", o44cd[2][0],o44cd[2][1],o44cd[2][2]);
262 add_vwstack (
"start",
"vup", o44cd[1][0],o44cd[1][1],o44cd[1][2]);
263 add_vwstack (
"start",
"window", -u, u, -v, v);
305 float o44c[4][4],o44cd[4][4],x,y,z;
306 Matrix
id = IDENTITY_MATRIX;
313 vp2jlc_matrix(cMo.inverse(),o44c);
318 add_vwstack (
"start",
"cop", o44c[3][0],o44c[3][1],o44c[3][2]);
319 x = o44c[2][0] + o44c[3][0];
320 y = o44c[2][1] + o44c[3][1];
321 z = o44c[2][2] + o44c[3][2];
322 add_vwstack (
"start",
"vrp", x,y,z);
323 add_vwstack (
"start",
"vpn", o44c[2][0],o44c[2][1],o44c[2][2]);
324 add_vwstack (
"start",
"vup", o44c[1][0],o44c[1][1],o44c[1][2]);
325 add_vwstack (
"start",
"window", -u, u, -v, v);
331 add_vwstack (
"start",
"cop", o44cd[3][0],o44cd[3][1],o44cd[3][2]);
332 x = o44cd[2][0] + o44cd[3][0];
333 y = o44cd[2][1] + o44cd[3][1];
334 z = o44cd[2][2] + o44cd[3][2];
335 add_vwstack (
"start",
"vrp", x,y,z);
336 add_vwstack (
"start",
"vpn", o44cd[2][0],o44cd[2][1],o44cd[2][2]);
337 add_vwstack (
"start",
"vup", o44cd[1][0],o44cd[1][1],o44cd[1][2]);
338 add_vwstack (
"start",
"window", -u, u, -v, v);
vpHomogeneousMatrix get_cMo()
unsigned int getWidth() const
The class provides a data structure for the homogeneous matrices as well as a set of operations on th...
void resize(const unsigned int height, const unsigned int width)
set the size of the image
class that defines a generic virtual robot
static int wait(double t0, double t)
static Type maximum(const Type &a, const Type &b)
bool constantSamplingTimeMode
Flag used to force the sampling time in the thread computing the robot's displacement to a constant v...
virtual ~vpRobotSimulator()
bool singularityManagement
bool displayDesiredObject
void getInternalView(vpImage< vpRGBa > &I)
static Type minimum(const Type &a, const Type &b)
Implementation of a wire frame simulator. Compared to the vpSimulator class, it does not require thir...
bool setVelocityCalled
Flag used to specify to the thread managing the robot displacements that the setVelocity() method has...
void display_scene(Matrix mat, Bound_scene &sc, vpImage< vpRGBa > &I, vpColor color)
vpSceneDesiredObject desiredObject
vpHomogeneousMatrix inverse() const
void initScene(vpSceneObject obj, vpSceneDesiredObject desiredObject)
void initScene(vpSceneObject obj, vpSceneDesiredObject desiredObject)
unsigned int getHeight() const
void init(vpImage< unsigned char > &I, int winx=-1, int winy=-1, const char *title=NULL)
vpDisplayRobotType displayType
virtual void get_fMi(vpHomogeneousMatrix *fMit)=0
void set_displayBusy(const bool &status)
void resize(const unsigned int i, const bool flagNullify=true)