23 #ifndef __PLUGINS_LASER_FILTER_FILTERS_PROJECTION_H_
24 #define __PLUGINS_LASER_FILTER_FILTERS_PROJECTION_H_
29 # error LaserProjectionDataFilter only availabe with TF
32 #include <tf/transform_listener.h>
45 std::string target_frame,
46 float not_from_x,
float not_to_x,
47 float not_from_y,
float not_to_y,
48 float only_from_z,
float only_to_z,
50 std::vector<LaserDataFilter::Buffer *> &
in);
56 inline void set_output(
float *outbuf, fawkes::tf::Point &p);
60 const std::string target_frame_;
61 const float not_from_x_, not_to_x_;
62 const float not_from_y_, not_to_y_;
63 const float only_from_z_, only_to_z_;
65 float sin_angles360[360];
66 float cos_angles360[360];
67 float sin_angles720[720];
68 float cos_angles720[720];
Fawkes library namespace.
Projects one laser into another laser's plane.
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.
std::vector< Buffer * > in
Vector of input arrays.
unsigned int in_data_size
Number of entries in input arrays.