Skip to content

Commit

Permalink
Fixing laser_filter to use tf::MessageFilter instead of tf::MessageNo…
Browse files Browse the repository at this point in the history
…tifier and deprecating the footprint filters.

git-svn-id: https://code.ros.org/svn/ros-pkg/stacks/laser_pipeline/trunk@24388 eb33c2ac-9c88-4c90-87e0-44a10359b0c3
  • Loading branch information
jleibs-test committed Sep 23, 2009
1 parent a5935dc commit 5002284
Show file tree
Hide file tree
Showing 8 changed files with 176 additions and 185 deletions.
6 changes: 0 additions & 6 deletions examples/footprint_filter_example.launch

This file was deleted.

5 changes: 0 additions & 5 deletions examples/footprint_filter_example.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions examples/point_cloud_footprint_filter_example.yaml

This file was deleted.

7 changes: 5 additions & 2 deletions include/laser_filters/footprint_filter.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,10 @@ namespace laser_filters
class LaserScanFootprintFilter : public filters::FilterBase<sensor_msgs::LaserScan>
{
public:
LaserScanFootprintFilter(){}
LaserScanFootprintFilter()
{
ROS_WARN("LaserScanFootprintFilter has been deprecated. Please use PR2LaserScanFootprintFilter instead.\n");
}

bool configure()
{
Expand All @@ -78,7 +81,7 @@ class LaserScanFootprintFilter : public filters::FilterBase<sensor_msgs::LaserSc
sensor_msgs::PointCloud laser_cloud;

try{
projector_.transformLaserScanToPointCloud("base_link", laser_cloud, input_scan, tf_);
projector_.transformLaserScanToPointCloud("base_link", input_scan, laser_cloud, tf_);
}
catch(tf::TransformException& ex){
ROS_ERROR("Transform unavailable %s", ex.what());
Expand Down
6 changes: 4 additions & 2 deletions include/laser_filters/point_cloud_footprint_filter.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,13 +53,15 @@ namespace laser_filters
class PointCloudFootprintFilter : public filters::FilterBase<sensor_msgs::PointCloud>
{
public:
PointCloudFootprintFilter() {}
PointCloudFootprintFilter() {
ROS_WARN("PointCloudFootprintFilter has been deprecated. Please use PR2PointCloudFootprintFilter instead.\n");
}

bool configure()
{
if(!getParam("inscribed_radius", inscribed_radius_))
{
ROS_ERROR("LaserScanFootprintFilter needs inscribed_radius to be set");
ROS_ERROR("PointCloudFootprintFilter needs inscribed_radius to be set");
return false;
}
return true;
Expand Down
19 changes: 8 additions & 11 deletions laser_filters_plugins.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,36 +9,33 @@
<class name="LaserScanIntensityFilter" type="laser_filters::LaserScanIntensityFilter"
base_class_type="filters::FilterBase<sensor_msgs::LaserScan>">
<description>
This is a median filter which filters sensor_msgs::LaserScan messages based
on intensity
This is a filter which filters sensor_msgs::LaserScan messages based on intensity
</description>
</class>
<class name="LaserScanFootprintFilter" type="laser_filters::LaserScanFootprintFilter"
<class name="ScanShadowsFilter" type="laser_filters::ScanShadowsFilter"
base_class_type="filters::FilterBase<sensor_msgs::LaserScan>">
<description>
This is a median filter which filters points out of a laser scan which are
inside the inscribed radius.
This is a filter which filters points from a laser scan that look like the veiling effect.
</description>
</class>
<class name="ScanShadowsFilter" type="laser_filters::ScanShadowsFilter"
<class name="InterpolationFilter" type="laser_filters::InterpolationFilter"
base_class_type="filters::FilterBase<sensor_msgs::LaserScan>">
<description>
This is a median filter which filters points from a laser scan that look like
the veiling effect.
This is a filter that will generate range readings for error readings in a scan by interpolating between valid readings on either side of the error
</description>
</class>
<class name="InterpolationFilter" type="laser_filters::InterpolationFilter"
<class name="LaserScanFootprintFilter" type="laser_filters::LaserScanFootprintFilter"
base_class_type="filters::FilterBase<sensor_msgs::LaserScan>">
<description>
This is a filter that will generate range readings for error readings in a scan by interpolating between valid readings on either side of the error
DEPRECATED: This is a filter which filters points out of a laser scan which are inside the inscribed radius.
</description>
</class>
</library>
<library path="lib/libpointcloud_filters">
<class name="PointCloudFootprintFilter" type="laser_filters::PointCloudFootprintFilter"
base_class_type="filters::FilterBase<sensor_msgs::PointCloud>">
<description>
Remove points from the pointcloud inside the robot base.
DEPRECATED: Remove points from the pointcloud inside the robot base.
</description>
</class>
</library>
Expand Down
7 changes: 3 additions & 4 deletions mainpage.dox
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,9 @@ This package is designed to provide filters for working with laser scans.

\section filters Laser Scan Filters

There are a number of filters that this class provides.
There is also a factory class to provide easy creation and chaining of laser scan filter
as a input to any process.
\todo implement and document (they're currently basically standalone nodes)
There are a number of filters that this class provides. There is also
a factory class to provide easy creation and chaining of laser scan
filters as a input to any process.

\subsection median Median Filter
laser_scan::LaserMedianFilter applies a median filter to scans both in range and intensity.
Expand Down
Loading

0 comments on commit 5002284

Please sign in to comment.