42 #include <visp/vpConfig.h>
46 #if defined(WIN32) || defined(VISP_HAVE_PTHREAD)
47 #include <visp/vpRobotWireFrameSimulator.h>
48 #include <visp/vpSimulatorViper850.h>
59 #if defined(VISP_HAVE_DISPLAY)
86 #if defined(VISP_HAVE_DISPLAY)
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);
virtual void get_fMi(vpHomogeneousMatrix *fMit)=0
unsigned int getWidth() const
The class provides a data structure for the homogeneous matrices as well as a set of operations on th...
bool constantSamplingTimeMode
Flag used to force the sampling time in the thread computing the robot's displacement to a constant v...
bool singularityManagement
void resize(const unsigned int height, const unsigned int width)
set the size of the image
vpRobotWireFrameSimulator()
static int wait(double t0, double t)
static Type maximum(const Type &a, const Type &b)
vpDisplayRobotType displayType
This class aims to be a basis used to create all the robot simulators.
void set_displayBusy(const bool &status)
void setSamplingTime(const double &delta_t)
void getInternalView(vpImage< vpRGBa > &I)
vpHomogeneousMatrix get_cMo()
void initScene(vpSceneObject obj, vpSceneDesiredObject desiredObject)
void initScene(const vpSceneObject &obj, const vpSceneDesiredObject &desiredObject)
bool displayDesiredObject
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...
virtual ~vpRobotWireFrameSimulator()
vpSceneDesiredObject desiredObject
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, const vpImage< vpRGBa > &I, const vpColor &color)
vpHomogeneousMatrix inverse() const
unsigned int getHeight() const
void init(vpImage< unsigned char > &I, int winx=-1, int winy=-1, const char *title=NULL)
void resize(const unsigned int i, const bool flagNullify=true)