VelocityFromRelative Class Reference

Calculate velocity from relative positions. More...

#include <models/velocity/relvelo.h>

Inheritance diagram for VelocityFromRelative:

List of all members.


Public Member Functions

 VelocityFromRelative (RelativePositionModel *model, unsigned int max_history_length, unsigned int calc_interval)
 Constructor.
virtual ~VelocityFromRelative ()
 Destructor.
virtual const char * getName () const
 Get name of velocity model.
virtual void setRobotPosition (float x, float y, float ori, timeval t)
 Set robot position.
virtual void setRobotVelocity (float vel_x, float vel_y, timeval t)
 Set robot velocity.
virtual void setPanTilt (float pan, float tilt)
 Set pan and tilt.
virtual void setTime (timeval t)
 Set current time.
virtual void setTimeNow ()
 Get current time from system.
virtual void getTime (long int *sec, long int *usec)
 Get time from velocity.
virtual void getVelocity (float *vel_x, float *vel_y)
 Method to retrieve velocity information.
virtual float getVelocityX ()
 Get velocity of tracked object in X direction.
virtual float getVelocityY ()
 Get velocity of tracked object in X direction.
virtual void calc ()
 Calculate velocity values from given data This method must be called after all relevent data (set*) has been set.
virtual void reset ()
 Reset velocity model Must be called if ball is not visible at any time.
virtual coordsys_type_t getCoordinateSystem ()
 Returns the used coordinate system, must be either COORDSYS_ROBOT_CART or COORDSYS_ROBOT_WORLD.

Detailed Description

Calculate velocity from relative positions.

Definition at line 50 of file relvelo.h.


Constructor & Destructor Documentation

VelocityFromRelative::VelocityFromRelative ( RelativePositionModel model,
unsigned int  max_history_length,
unsigned int  calc_interval 
)

Constructor.

Parameters:
model relative position model
max_history_length maximum history length
calc_interval calculation interval

Definition at line 44 of file relvelo.cpp.

VelocityFromRelative::~VelocityFromRelative (  )  [virtual]

Destructor.

Definition at line 91 of file relvelo.cpp.


Member Function Documentation

void VelocityFromRelative::calc (  )  [virtual]

Calculate velocity values from given data This method must be called after all relevent data (set*) has been set.

After calc() the velocity values can be retrieved

Implements VelocityModel.

Definition at line 167 of file relvelo.cpp.

References RelativePositionModel::get_distance(), RelativePositionModel::get_x(), RelativePositionModel::get_y(), vel_postime_t::t, fawkes::time_diff_sec(), vel_postime_t::x, and vel_postime_t::y.

coordsys_type_t VelocityFromRelative::getCoordinateSystem (  )  [virtual]

Returns the used coordinate system, must be either COORDSYS_ROBOT_CART or COORDSYS_ROBOT_WORLD.

ROBOT denotes velocities relative to the robot (which can be tramsformed to global velocities by: glob_vel_x = rel_vel_x * cos( robot_ori ) - rel_vel_y * sin( robot_ori ) WORLD denotes velocities in the robot coordinate system glob_vel_y = rel_vel_x * sin( robot_ori ) + rel_vel_y * cos( robot_ori )

Implements VelocityModel.

Definition at line 396 of file relvelo.cpp.

const char * VelocityFromRelative::getName ( void   )  const [virtual]

Get name of velocity model.

Returns:
name of velocity model

Implements VelocityModel.

Definition at line 389 of file relvelo.cpp.

void VelocityFromRelative::getTime ( long int *  sec,
long int *  usec 
) [virtual]

Get time from velocity.

Parameters:
sec contains seconds since the epoch upon return (Unix timestamp)
usec contains microseconds upon return

Implements VelocityModel.

Definition at line 133 of file relvelo.cpp.

void VelocityFromRelative::getVelocity ( float *  vel_x,
float *  vel_y 
) [virtual]

Method to retrieve velocity information.

Parameters:
vel_x If not NULL contains velocity in X direction after call
vel_y If not NULL contains velocity in Y direction after call

Implements VelocityModel.

Definition at line 141 of file relvelo.cpp.

float VelocityFromRelative::getVelocityX (  )  [virtual]

Get velocity of tracked object in X direction.

Returns:
velocity in m/s.

Implements VelocityModel.

Definition at line 153 of file relvelo.cpp.

float VelocityFromRelative::getVelocityY (  )  [virtual]

Get velocity of tracked object in X direction.

Returns:
velocity in m/s.

Implements VelocityModel.

Definition at line 160 of file relvelo.cpp.

void VelocityFromRelative::reset ( void   )  [virtual]

Reset velocity model Must be called if ball is not visible at any time.

Implements VelocityModel.

Definition at line 371 of file relvelo.cpp.

void VelocityFromRelative::setPanTilt ( float  pan,
float  tilt 
) [virtual]

Set pan and tilt.

Parameters:
pan pan
tilt tilt

Implements VelocityModel.

Definition at line 97 of file relvelo.cpp.

void VelocityFromRelative::setRobotPosition ( float  x,
float  y,
float  ori,
timeval  t 
) [virtual]

Set robot position.

Parameters:
x x
y y
ori ori
t timestamp of the pose information

Implements VelocityModel.

Definition at line 103 of file relvelo.cpp.

void VelocityFromRelative::setRobotVelocity ( float  vel_x,
float  vel_y,
timeval  t 
) [virtual]

Set robot velocity.

Parameters:
vel_x robot velocity in x direction
vel_y robot velocity in y direction
t timestamp of the velocity information

Implements VelocityModel.

Definition at line 109 of file relvelo.cpp.

void VelocityFromRelative::setTime ( timeval  t  )  [virtual]

Set current time.

Parameters:
t time

Implements VelocityModel.

Definition at line 118 of file relvelo.cpp.

void VelocityFromRelative::setTimeNow (  )  [virtual]

Get current time from system.

Implements VelocityModel.

Definition at line 126 of file relvelo.cpp.


The documentation for this class was generated from the following files: