OmniRelative Class Reference

Omni vision relative position model. More...

#include <models/relative_position/omni_relative.h>

Inheritance diagram for OmniRelative:

List of all members.


Public Member Functions

 OmniRelative (MirrorModel *mirror_model)
 Constructor.
virtual const char * get_name () const
 Get name of relative position model.
virtual void set_radius (float r)
 Set radius of a found circle.
virtual void set_center (float x, float y)
 Set center of a found circle.
virtual void set_center (const center_in_roi_t &c)
 Set center of a found circle.
virtual void set_pan_tilt (float pan=0.0f, float tilt=0.0f)
 Set camera pan and tilt.
virtual void get_pan_tilt (float *pan, float *tilt) const
 Get camera pan tilt.
virtual float get_distance () const
 Get distance to object.
virtual float get_x () const
 Get relative X coordinate of object.
virtual float get_y () const
 Get relative Y coordinate of object.
virtual float get_bearing () const
 Get bearing (horizontal angle) to object.
virtual float get_slope () const
 Get slope (vertical angle) to object.
virtual float get_radius () const
 Get radius.
virtual void calc ()
 Calculate position data.
virtual void calc_unfiltered ()
 Calculate data unfiltered.
virtual void reset ()
 Reset all data.
virtual bool is_pos_valid () const
 Check if position is valid.

Detailed Description

Omni vision relative position model.

Definition at line 35 of file omni_relative.h.


Constructor & Destructor Documentation

OmniRelative::OmniRelative ( MirrorModel mirror_model  ) 

Constructor.

Parameters:
mirror_model mirror model

Definition at line 36 of file omni_relative.cpp.


Member Function Documentation

void OmniRelative::calc (  )  [virtual]

Calculate position data.

Call this method if all relevant data (set(Radius|Center|PanTilt)) has been set, after this valid data can be retrieved via get*

Implements RelativePositionModel.

Definition at line 162 of file omni_relative.cpp.

References MirrorModel::getWorldPointRelative(), MirrorModel::isValidPoint(), fawkes::polar_coord_2d_t::phi, and fawkes::polar_coord_2d_t::r.

void OmniRelative::calc_unfiltered (  )  [virtual]

Calculate data unfiltered.

Same as calc(), but without any filtering (i.e. no Kalman filter).

Implements RelativePositionModel.

Definition at line 190 of file omni_relative.cpp.

References MirrorModel::getWorldPointRelative(), fawkes::polar_coord_2d_t::phi, and fawkes::polar_coord_2d_t::r.

float OmniRelative::get_bearing ( void   )  const [virtual]

Get bearing (horizontal angle) to object.

Returns:
bearing in rad

Implements RelativePositionModel.

Definition at line 77 of file omni_relative.cpp.

float OmniRelative::get_distance (  )  const [virtual]

Get distance to object.

Returns:
distance to object in meters.

Implements RelativePositionModel.

Definition at line 70 of file omni_relative.cpp.

const char * OmniRelative::get_name ( void   )  const [virtual]

Get name of relative position model.

Returns:
name of relative position model

Implements RelativePositionModel.

Definition at line 147 of file omni_relative.cpp.

void OmniRelative::get_pan_tilt ( float *  pan,
float *  tilt 
) const [virtual]

Get camera pan tilt.

Parameters:
pan contains pan value (rad) upon return
tilt contains tilt value (rad) upon return

Implements RelativePositionModel.

Definition at line 141 of file omni_relative.cpp.

float OmniRelative::get_radius (  )  const [virtual]

Get radius.

Returns:
always 0

Definition at line 128 of file omni_relative.cpp.

float OmniRelative::get_slope (  )  const [virtual]

Get slope (vertical angle) to object.

Returns:
slope in rad

Implements RelativePositionModel.

Definition at line 84 of file omni_relative.cpp.

float OmniRelative::get_x ( void   )  const [virtual]

Get relative X coordinate of object.

Returns:
relative X coordinate in local metric cartesian coordinate system

Implements RelativePositionModel.

Definition at line 98 of file omni_relative.cpp.

float OmniRelative::get_y ( void   )  const [virtual]

Get relative Y coordinate of object.

Returns:
relative Y coordinate in local metric cartesian coordinate system

Implements RelativePositionModel.

Definition at line 91 of file omni_relative.cpp.

bool OmniRelative::is_pos_valid (  )  const [virtual]

Check if position is valid.

Returns:
true, if the calculated position is valid, false otherwise
Author:
Tim Niemueller

Implements RelativePositionModel.

Definition at line 183 of file omni_relative.cpp.

References MirrorModel::isValidPoint().

void OmniRelative::reset (  )  [virtual]

Reset all data.

This must be called if the object is not visible.

Implements RelativePositionModel.

Definition at line 154 of file omni_relative.cpp.

void OmniRelative::set_center ( const center_in_roi_t c  )  [virtual]

Set center of a found circle.

This is especially used for ball position implementations.

Parameters:
c center

Implements RelativePositionModel.

Definition at line 113 of file omni_relative.cpp.

void OmniRelative::set_center ( float  x,
float  y 
) [virtual]

Set center of a found circle.

This is especially used for ball position implementations.

Parameters:
x x position in image (pixels)
y y position in image (pixels)

Implements RelativePositionModel.

Definition at line 105 of file omni_relative.cpp.

void OmniRelative::set_pan_tilt ( float  pan = 0.0f,
float  tilt = 0.0f 
) [virtual]

Set camera pan and tilt.

Parameters:
pan pan value (rad)
tilt tilt value (rad)

Implements RelativePositionModel.

Definition at line 135 of file omni_relative.cpp.

void OmniRelative::set_radius ( float  r  )  [virtual]

Set radius of a found circle.

This is especially used for ball position implementations.

Parameters:
r radius

Implements RelativePositionModel.

Definition at line 119 of file omni_relative.cpp.


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