Fawkes API
Fawkes Development Version
|
Projects one laser into another laser's plane. More...
#include "filters/projection.h"
Public Member Functions | |
LaserProjectionDataFilter (fawkes::tf::TransformListener *tf_listener, std::string target_frame, float not_from_x, float not_to_x, float not_from_y, float not_to_y, float only_from_z, float only_to_z, unsigned int in_data_size, std::vector< LaserDataFilter::Buffer * > &in) | |
Constructor. | |
void | filter () |
Filter the incoming data. |
Projects one laser into another laser's plane.
This first transforms the laser value into the target frame, and then projects it into the X-Y plane (which is assumed to be the laser plane of another (virtual) laser. Additionally some sanity filtering in all three axes is applied after the transformation, but before the projection.
LaserProjectionDataFilter::LaserProjectionDataFilter | ( | fawkes::tf::TransformListener * | tf_listener, |
std::string | target_frame, | ||
float | not_from_x, | ||
float | not_to_x, | ||
float | not_from_y, | ||
float | not_to_y, | ||
float | only_from_z, | ||
float | only_to_z, | ||
unsigned int | in_data_size, | ||
std::vector< LaserDataFilter::Buffer * > & | in | ||
) |
Constructor.
tf_listener | transform listener to get transform from |
target_frame | target coordinate fram to project into |
not_from_x | lower X boundary of ignored rectangle |
not_to_x | upper X boundary of ignored rectangle |
not_from_y | lower Y boundary of ignored rectangle |
not_to_y | upper Y boundary of ignored rectangle |
only_from_z | minimum Z value for accepted points |
only_to_z | maximum Z value for accepted points |
in_data_size | number of entries input value arrays |
in | vector of input arrays |
Definition at line 58 of file projection.cpp.
References fawkes::deg2rad(), and LaserDataFilter::out_data_size.
void LaserProjectionDataFilter::filter | ( | ) | [virtual] |
Filter the incoming data.
Function shall filter the data in the "in" member vector and write output to the "out" member vector.
Implements LaserDataFilter.
Definition at line 124 of file projection.cpp.
References LaserDataFilter::in, LaserDataFilter::out, LaserDataFilter::out_data_size, fawkes::tf::Transformer::lookup_transform(), LaserDataFilter::in_data_size, and fawkes::deg2rad().