Fawkes API Fawkes Development Version

firevision::FrontBallRelativePos Class Reference

Relative ball position model for front vision. More...

#include <>>

Inheritance diagram for firevision::FrontBallRelativePos:

List of all members.

Public Member Functions

 FrontBallRelativePos (unsigned int image_width, unsigned int image_height, float camera_height, float camera_offset_x, float camera_offset_y, float camera_ori, float horizontal_angle, float vertical_angle, float ball_circumference)
 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 void set_horizontal_angle (float angle_deg)
 Set horizontal viewing angle.
virtual void set_vertical_angle (float angle_deg)
 Set vertical viewing angle.
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 the ball 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

Relative ball position model for front vision.

Definition at line 39 of file front_ball.h.


Constructor & Destructor Documentation

firevision::FrontBallRelativePos::FrontBallRelativePos ( unsigned int  image_width,
unsigned int  image_height,
float  camera_height,
float  camera_offset_x,
float  camera_offset_y,
float  camera_ori,
float  horizontal_angle,
float  vertical_angle,
float  ball_circumference 
)

Constructor.

Parameters:
image_widthwidth of image in pixels
image_heightheight of image in pixels
camera_heightheight of camera in meters
camera_offset_xcamera offset of the motor axis in x direction
camera_offset_ycamera offset of the motor axis in y direction
camera_oricamera orientation compared to the robot
horizontal_anglehorizontal viewing angle (in degree)
vertical_anglevertical viewing angle (in degree)
ball_circumferenceball circumference

Definition at line 55 of file front_ball.cpp.

References fawkes::deg2rad().


Member Function Documentation

void firevision::FrontBallRelativePos::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 firevision::RelativePositionModel.

Definition at line 236 of file front_ball.cpp.

void firevision::FrontBallRelativePos::calc_unfiltered ( ) [virtual]

Calculate data unfiltered.

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

Implements firevision::RelativePositionModel.

Definition at line 290 of file front_ball.cpp.

float firevision::FrontBallRelativePos::get_bearing ( void  ) const [virtual]

Get bearing (horizontal angle) to object.

Returns:
bearing in rad

Implements firevision::RelativePositionModel.

Definition at line 125 of file front_ball.cpp.

float firevision::FrontBallRelativePos::get_distance ( ) const [virtual]

Get distance to object.

Returns:
distance to object in meters.

Implements firevision::RelativePositionModel.

Definition at line 118 of file front_ball.cpp.

const char * firevision::FrontBallRelativePos::get_name ( void  ) const [virtual]

Get name of relative position model.

Returns:
name of relative position model

Implements firevision::RelativePositionModel.

Definition at line 202 of file front_ball.cpp.

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

Get camera pan tilt.

Parameters:
pancontains pan value (rad) upon return
tiltcontains tilt value (rad) upon return

Implements firevision::RelativePositionModel.

Definition at line 194 of file front_ball.cpp.

float firevision::FrontBallRelativePos::get_radius ( ) const [virtual]

Get the ball radius.

Returns:
ball radius

Definition at line 179 of file front_ball.cpp.

float firevision::FrontBallRelativePos::get_slope ( ) const [virtual]

Get slope (vertical angle) to object.

Returns:
slope in rad

Implements firevision::RelativePositionModel.

Definition at line 132 of file front_ball.cpp.

float firevision::FrontBallRelativePos::get_x ( void  ) const [virtual]

Get relative X coordinate of object.

Returns:
relative X coordinate in local metric cartesian coordinate system

Implements firevision::RelativePositionModel.

Definition at line 146 of file front_ball.cpp.

float firevision::FrontBallRelativePos::get_y ( void  ) const [virtual]

Get relative Y coordinate of object.

Returns:
relative Y coordinate in local metric cartesian coordinate system

Implements firevision::RelativePositionModel.

Definition at line 139 of file front_ball.cpp.

bool firevision::FrontBallRelativePos::is_pos_valid ( ) const [virtual]

Check if position is valid.

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

Implements firevision::RelativePositionModel.

Definition at line 283 of file front_ball.cpp.

void firevision::FrontBallRelativePos::reset ( ) [virtual]

Reset all data.

This must be called if the object is not visible.

Implements firevision::RelativePositionModel.

Definition at line 229 of file front_ball.cpp.

void firevision::FrontBallRelativePos::set_center ( const center_in_roi_t c) [virtual]

Set center of a found circle.

This is especially used for ball position implementations.

Parameters:
ccenter

Implements firevision::RelativePositionModel.

Definition at line 161 of file front_ball.cpp.

References firevision::center_in_roi_t::x, and firevision::center_in_roi_t::y.

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

Set center of a found circle.

This is especially used for ball position implementations.

Parameters:
xx position in image (pixels)
yy position in image (pixels)

Implements firevision::RelativePositionModel.

Definition at line 153 of file front_ball.cpp.

void firevision::FrontBallRelativePos::set_horizontal_angle ( float  angle_deg) [virtual]

Set horizontal viewing angle.

Parameters:
angle_deghorizontal viewing angle in degree

Definition at line 212 of file front_ball.cpp.

References fawkes::deg2rad().

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

Set camera pan and tilt.

Parameters:
panpan value (rad)
tilttilt value (rad)

Implements firevision::RelativePositionModel.

Definition at line 186 of file front_ball.cpp.

void firevision::FrontBallRelativePos::set_radius ( float  r) [virtual]

Set radius of a found circle.

This is especially used for ball position implementations.

Parameters:
rradius

Implements firevision::RelativePositionModel.

Definition at line 169 of file front_ball.cpp.

void firevision::FrontBallRelativePos::set_vertical_angle ( float  angle_deg) [virtual]

Set vertical viewing angle.

Parameters:
angle_deghorizontal viewing angle in degree

Definition at line 222 of file front_ball.cpp.

References fawkes::deg2rad().


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends