Changelog for package costmap_2d
1.17.3 (2023-01-10)
[ROS-O] various patches (#1225) * do not specify obsolete c++11 standard this breaks with current versions of log4cxx. * update pluginlib include paths the non-hpp headers have been deprecated since kinetic * use lambdas in favor of boost::bind Using boost’s _1 as a global system is deprecated since C++11. The ROS packages in Debian removed the implicit support for the global symbols, so this code fails to compile there without the patch.
Contributors: Michael Görner
1.17.2 (2022-06-20)
Removed unused variables in costmap_2d_ros (#1126) remove unused robot_stopped_, old_pose_ and timer_
Check if stamp of transformed pose is non-zero (#1200)
fix crashes in AMCL (#1152) * fix: catch runtime_error from roscore * ignore malformed message from laser, otherwise it will crash
The main function has to return an int value. (#1101)
fix boundary point exclusion in convexFillCells (#1095)
Fix deadlock when starting map with map-update-frequency set to zero (#1072) Co-authored-by: Dima Dorezyuk <dorezyuk@magazino.eu>
Increase scope of costmap mutex in publishCostmap to cover costmap calls (#992)
costmap_2d: remove useless and buggy testing helper function (#1069) (#1070) Co-authored-by: JF Dalbosco <jean-francois.dalbosco@safrangroup.com>
Fix future robot pose by Costmap2D (#1066) Co-authored-by: Pavlo Kolomiiets <pavlo@blindnology.com>
use const-ref-getter for strings and vectors (#1035) Co-authored-by: Dima Dorezyuk <dorezyuk@magazino.eu>
move enabled-logic to the LayeredCostmap (#1036) Co-authored-by: Dima Dorezyuk <dorezyuk@magazino.eu>
cosmetic change (#1055)
costmap_2d: Add missing package dependency to Eigen (#1033)
Add invert_area_to_clear to clear costmap recovery behavior (#1030)
Contributors: Atsushi Watanabe, ChristofDubs, Dhruv Maroo, Dima Dorezyuk, G.Doisy, Griswald Brooks, Noriaki Ando, Pavlo Kolomiiets, Yuki Furuta, Yukihiro Saito, easylyou, jdalbosc
1.17.1 (2020-08-27)
add explicit call to ros::Timer::stop in the destructor (#984) Co-authored-by: Dima Dorezyuk <dorezyuk@magazino.eu>
Exposing stopped_ variable in costmap2D_ros with the getter function isStopped (#913)
use const for getter methods (#948)
Contributors: Dima Dorezyuk, Marco Bassa, Yuki Furuta
1.17.0 (2020-04-02)
Merge pull request #982 from ros-planning/noetic_prep Noetic Migration
fix invalid memory access
attempt to get test to run
increase required cmake version
Contributors: Michael Ferguson
1.16.6 (2020-03-18)
1.16.5 (2020-03-15)
[melodic] updated install for better portability. (#973)
Contributors: Sean Yen
1.16.4 (2020-03-04)
fix published footprint topic name (#947) The default name of the topic will be updated in noetic
[Windows][melodic] Navigation (except for map_server and amcl) Windows build bring up (#851)
Merge pull request #957 from Blindnology/melodic-updateOrigin Optimize costmap_2d::updateOrigin
Optimize costmap_2d::updateOrigin
Contributors: Michael Ferguson, Pavlo Kolomiiets, Sean Yen, Yuki Furuta
1.16.3 (2019-11-15)
Merge pull request #877 from SteveMacenski/layer_clear_area-melodic [melodic] moving clearing area method to costmap_layer so other applications can clear other types.
Merge branch ‘melodic-devel’ into layer_clear_area-melodic
Drop Parameter Magic (#893)
Costmap_2d plugin universal parameters and pre-hydro warnings (#738) * Comment and description clarification * Renamed resetOldParameters to loadOldParameters * Upscaled pre-hydro parameter info message to warning and added costmap-name * Warn user when static_map or map_type is set but not used while plugins are used * Added function that copies parent parameters inside each layer (makes it possible to set a global inflation_radius) * use parameter magic
Changed logic for when to resize layered costmap in static layer (#792) * Changed logic for when to resize layered costmap in static layer -Now the master layered costmap should no longer get resized when isSizeLocked returns true * Fixing format for if loop
clear area in layer for melodic
[kinetic] Fix Bounds Bug (plus test) (#871) (#875) * fix map bounds bug * Add test
Fix install (#855)
Add additional linked libraries (#803)
Contributors: David V. Lu!!, Martin Ganeff, Michael Ferguson, Steven Macenski, stevemacenski
1.16.2 (2018-07-31)
Merge pull request #773 from ros-planning/packaging_fixes packaging fixes
update costmap_2d cmake * explicit dependency on tf2 * remove old PCL disable crap
Contributors: Michael Ferguson
1.16.1 (2018-07-28)
1.16.0 (2018-07-25)
Switch to TF2 #755
unify combination_method dynamic reconfig, closes #402
Merge pull request #723 from moriarty/melodic-buildfarm-errors Melodic buildfarm errors
[costmap_2d/test] set empty transform to Identity
fix test: abs(unsigned int) is ambiguous Instead, compare values and subtract smaller from larger to find the dx and dy.
fixes pluginlib deprecated header warnings
Merge pull request #694 from ros-planning/lunar_691 costmap variable init & cleanup (forward port of #691)
remove unused got_footprint_
initialize all costmap variables
Merge pull request #686 from ros-planning/lunar_675 Fixed race condition with costmaps in LayeredCostmap::resizeMap()
Fixed race condition with costmaps in LayeredCostmap::resizeMap() LayeredCostmap::updateMap() and LayeredCostmap::resizeMap() write to the master grid costmap. And these two functions can be called by different threads at the same time. One example of these cases is a race condition between subscriber callback thread dealing with dynamically-size-changing static_layer and periodical updateMap() calls from Costmap2DROS thread. Under the situation the master grid costmap is not thread-safe. LayeredCostmap::updateMap() already used the master grid costmap’s lock.
Contributors: Alexander Moriarty, David V. Lu, Jaeyoung Lee, Michael Ferguson, Vincent Rabaud
1.15.2 (2018-03-22)
Merge pull request #673 from ros-planning/email_update_lunar update maintainer email (lunar)
Merge pull request #670 from DLu/fix206_lunar Fixes #206 for Lunar
fix ‘enable’ for static_layer with rolling window (#659) (#665)
Merge pull request #649 from aaronhoy/lunar_add_ahoy Add myself as a maintainer.
Contributors: Aaron Hoy, David V. Lu!!, Jannik Abbenseth, Michael Ferguson
1.15.1 (2017-08-14)
1.15.0 (2017-08-07)
Added parameter for allowing inflation in unknown cells (#564)
Inflation Layer protected members and virtual computeCost [ABI BREAKING]
Fix for #517: create a getRobotPose method on move_base instead of using that on the costmaps
don’t update costs if inflation radius is zero
rebase fixups
convert packages to format2
Speedup (~60%) inflation layer update (#525)
Fix CMakeLists + package.xmls (#548)
add missing deps on libpcl
import only PCL common
pcl proagate -lQt5::Widgets flag so we need to find_package Qt5Widgets (#578)
Added deps to amcl costmap_2d move_base (#512)
remove GCC warnings
Fix CMake warnings
renamed targets for message generation (gencpp -> generate_messages_cpp) in order to avoid warnings for non-existing target dependencies
Fixed race condition with costmaps
Merge pull request #491 from alexhenning/kinetic-inflation-fix
Fixed sign error in inflation layer
Adds warning when a layer shrinks the bounds
Fixed bug with inflation layer that caused underinflation
Fixed bug with artifacts when not current
Fix bug with inflation artifacts being left behind
Fixes issue with costmaps shearing
Made costmap publishing truly lazy
Contributors: Alex Henning, Alexander Reimann, Hidde Wieringa, Jorge Santos, Jorge Santos Simón, Martin Günther, Michael Ferguson, Mikael Arguedas, Stephan Opfer, Vincent Rabaud, mryellow
1.14.0 (2016-05-20)
Reordered initializer list to match order of declarations. This avoids compiler warning with some compilers.
Made update map threadsafe This is necessary for some plugins (e.g. VoxelLayer) that implement a thread unsafe updateBounds() function.
Fix bug with resetting static layer If we don’t have a new topic, consider our old data as if it were new.
fix resource locations to fix tests
Increase time-limit on failing test
Merge pull request #388 from yujinrobot/jade_inflation_ghost_fix No more ghosts in the inflation layer
Fixes the dynamic reconfigure segfault Doing a dynamic reconfigure of the inflation radius recreates the cached cost values without first locking a mutex, which causes a segfault. This breaks the reconfigure of inflation parameters into a separate function and adds a mutex lock.
Merge pull request #415 from alexhenning/jade-fix-multiple-static-layers Fixes an issue with having multiple static layers
Fixes an issue with having multiple static layers If you have a static layer in both the local and global costmaps that use the same map topic, there is a race condition that can cause the static layer to get stuck after printing Requesting map….. This race condition seems to be due to the call to shutdown in deactivate and how the NodeHandle handles multiple subscribers under the hood. This issue appears to happen about 1 in 1000 times in the setup I was testing. This fix has never failed in over 1000000 tests. Instead of calling activate and deactivate, the publisher is only recreated if the topic has changed. Otherwise, it reuses the old setup.
fix related to issue #408 - With Rolling Window on, costmap_2d not properly updating bounds and costs in the static layer
No more ghosts in the inflation layer Previous bounds would fit the sensor measurements, and the inflation layer would clear out to these, but leave ‘ghosts’ behind. These ghosts are from two sources - 1) the inflation radius and 2) whole obstacles left behind as the robot has moved from the last point. The modifications here remember the last bounds and set the new bounds so that a box at least large enough to incorporate the old bounds plus the inflation radius is generated.
Contributors: Alex Henning, Daniel Stonier, Levon Avagyan, Michael Ferguson, palmieri
1.13.1 (2015-10-29)
Remove excessive canTransform spam.
Fix for #382
Republish costmap if origin changes
Remove Footprint Layer
Remove extra sign definition and use proper one when padding footprint
fix plugin warnings on throw, closes #205
initialize publisher variables
Look for robot_radius when footprint is not set. #206
Add a first_map_only parameter so we keep reusing the first received static map
Merge pull request #331 from mikeferguson/static_layer_any_frame
support rolling static map in any frame
fix destructor of Costmap2D
proper locking during costmap update
do not resize static map when rolling
Static layer works with rolling window now
Contributors: Daniel Stonier, David Lu, Jihoon Lee, Michael Ferguson, Rein Appeldoorn, commaster90
1.13.0 (2015-03-17)
fixed issue with voxel_layer and obstacle_layer both deleting the same dynamic_reconfigure::Server and causing segfaults
Fixing various memory freeing operations
static_layer: Fix indexing error in OccupancyGridUpdate callback function.
Contributors: Alex Bencz, David V. Lu!!, James Servos, Julse, Kaijen Hsiao
1.12.0 (2015-02-04)
update maintainer email
Contributors: Michael Ferguson
1.11.15 (2015-02-03)
Add ARCHIVE_DESTINATION for static builds
Contributors: Gary Servin
1.11.14 (2014-12-05)
added waitForTransform to bufferCloud to solve extrapolation into the future exception
deallocate costmap_ before reallocating
prevent div by zero in raytraceLine
only prefix sensor_frame when it’s not empty
tf_prefix support in obstacle_layer
remove undefined function updateUsingPlugins
remove unused cell_data.h
numerous style fixes
Contributors: Andrzej Pronobis, David Lu, Jeremie Deray, Mani Monajjemi, Michael Ferguson, enriquefernandez
1.11.13 (2014-10-02)
1.11.12 (2014-10-01)
costmap_2d: export library layers
Merge pull request #198 from kmhallen/hydro-devel Fixed costmap_2d clearing from service /move_base/clear_costmaps
Costmap Layer comments
Add destructors for all of the layers to remove the dynamic parameter clients
Add method for removing static observations (for testing)
Move testing_helper
Initial Clearing Costmap parameter change
Fixed costmap_2d clearing from service /move_base/clear_costmaps
Contributors: David Lu!!, Kevin Hallenbeck, Michael Ferguson
1.11.11 (2014-07-23)
removes trailing spaces and empty lines
Contributors: Enrique Fernández Perdomo
1.11.10 (2014-06-25)
Remove unnecessary colons
Remove unused robot_radius parameter from dynamic_reconfigure
Contributors: Daniel Stonier, David Lu!!
1.11.9 (2014-06-10)
fix hypot issues, add comments to tests from tracking this down
dynamically reconfigure the previously uninitialised variable ‘combination_method’, closes #187.
uses ::hypot(x, y) instead of sqrt(x*x, y*y)
Contributors: Daniel Stonier, Michael Ferguson, Enrique Fernández Perdomo
1.11.8 (2014-05-21)
1.11.7 (2014-05-21)
uses %u instead of %d for unsigned int
update build to find eigen using cmake_modules
inflation_layer: place .top() & .pop() calls together
add parameter to configure whether full costmap is published each time
Contributors: Michael Ferguson, Siegfried-A. Gevatter Pujals, agentx3r, enriquefernandez
1.11.5 (2014-01-30)
Better threading in inflation layer
don’t set initialized until updateMap is called
check whether costmap is initalized before publishing
New Overwrite Methods updateMap method Fix for #68 Fix for inflation memory problems InfIsValid #128 Static layer can recieve updates and accept non-lethal values Obstacle layer uses track_unknown_space parameter Footprint layer is not longer created as top-level layer (used as part of obstacle layer instead)
Download test data from download.ros.org instead of willow
Change maintainer from Hersh to Lu
1.11.4 (2013-09-27)
Improve bounds checking
Reimplement Clear Costmaps Service by implementing reset functions in each layer
Package URL Updates
Additional static layer functionality for receiving updates
Misc. Pointcloud fixes
Improved eigen alignment problem on 32-bit arch.
fixed costmap_2d tests