24 #ifndef __FIREVISION_MODELS_SCANLINES_STAR_H_ 25 #define __FIREVISION_MODELS_SCANLINES_STAR_H_ 27 #include <fvmodels/scanlines/scanlinemodel.h> 39 ScanlineStar(
unsigned int image_width,
unsigned int image_height,
40 unsigned int center_x,
unsigned int center_y,
41 unsigned int num_rays,
unsigned int radius_incr,
42 unsigned char* yuv_mask,
43 unsigned int dead_radius = 0,
unsigned int max_radius = 0,
44 unsigned int margin = 0);
68 void generate_scan_points();
70 unsigned int m_image_width;
71 unsigned int m_image_height;
73 unsigned int m_num_rays;
74 unsigned int m_radius_incr;
75 unsigned int m_dead_radius;
76 unsigned int m_max_radius;
77 unsigned int m_margin;
79 unsigned char* m_mask;
86 unsigned int m_ray_index;
88 typedef std::map<unsigned int, fawkes::upoint_t> Ray;
89 std::map<float, Ray*> m_rays;
90 std::map<float, Ray*>::iterator m_ray_iter;
91 Ray::iterator m_point_iter;
void advance()
Calculates the next scanline point.
void set_robot_pose(float x, float y, float ori)
Set the robot's pose.
Scanline model interface.
fawkes::upoint_t * operator->()
Get pointer to current point.
const char * get_name()
Get name of scanline model.
ScanlineStar(unsigned int image_width, unsigned int image_height, unsigned int center_x, unsigned int center_y, unsigned int num_rays, unsigned int radius_incr, unsigned char *yuv_mask, unsigned int dead_radius=0, unsigned int max_radius=0, unsigned int margin=0)
Constructor.
void set_pan_tilt(float pan, float tilt)
Set camera's pan/tilt values.
unsigned int get_margin()
Get margin around points.
fawkes::upoint_t * operator++()
Postfix ++ operator.
void skip_current_ray()
Skips the current ray and continues with the first valid scanline point of the next ray...
Point with cartesian coordinates as unsigned integers.
Star-like arranged scanline points.
fawkes::upoint_t operator*()
Get the current coordinate.
unsigned int ray_index() const
Return the index of the current ray.
virtual ~ScanlineStar()
Destructor.
bool finished()
Check if all desired points have been processed.
unsigned int num_rays() const
Returns the number of segments in the model.
unsigned int current_radius() const
Returns the radius of the current scanline point.
bool first_on_ray() const
Checks whether the current scanpoint is the first scanpoint on the current ray.
float current_angle() const
Returns the angle of the current scanline point.