No version for distro humble showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

Package Summary

Version 0.3.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version kilted
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro rolling showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro ardent showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro bouncy showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro crystal showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro eloquent showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro dashing showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro galactic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro foxy showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro iron showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro lunar showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro jade showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro indigo showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro hydro showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro kinetic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro melodic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange

No version for distro noetic showing jazzy. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.2.1
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/EasyNavigation/easynav_plugins.git
VCS Type git
VCS Version jazzy
Last Updated 2026-02-27
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Easy Navigation: Routes MapsManager package.

Maintainers

  • Francisco Martín Rico

Authors

No additional authors.

easynav_routes_maps_manager

Description

Maps Manager that maintains a set of navigation routes (in 2D or 3D), exposes them as visualization markers and interactive markers in RViz, and makes the current RoutesMap available through the NavState so that other managers and filters can consume it (for example, costmap filters that constrain navigation to a given corridor).

Routes are represented as a list of straight-line segments between two poses. Nothing prevents you from using non-zero Z coordinates in the poses, so routes can be fully 3D if downstream consumers support it. They are typically loaded from a YAML file stored in a ROS package and can be edited at runtime using interactive markers. A default single route segment is created automatically when no routes file is configured.

Authors and Maintainers

  • Authors: Intelligent Robotics Lab
  • Maintainers: Francisco Martín Rico fmrico@gmail.com

Supported ROS 2 Distributions

Distribution Status
jazzy jazzy
kilted kilted
rolling rolling

Plugin (pluginlib)

  • Plugin Name: easynav_routes_maps_manager/RoutesMapsManager
  • Type: easynav::RoutesMapsManager
  • Base Class: easynav::MapsManagerBase
  • Library: easynav_routes_maps_manager
  • Description: Maintains an in-memory set of route segments (RoutesMap), loads/saves them from/to YAML files, exposes them through ROS markers and interactive markers, and writes the current RoutesMap into the NavState.

In addition, this package provides the RoutesCostmapFilter plugin, which can be used by the costmap Maps Manager to raise costs outside the defined routes, effectively constraining navigation to a configurable corridor around the segments. Other routes filters (for example, for NavMap or Octomap representations) can be implemented in the same way, each using its own NavState keys and outputs.

Parameters

Plugin Parameters (namespace: /<node_fqn>/easynav_routes_maps_manager/RoutesMapsManager/...)

Name Type Default Description
<plugin>.package string "" Package name used to resolve relative route YAML paths via ament_index. When empty and <plugin>.map_path_file is also empty, a default in-memory route is created.
<plugin>.map_path_file string "" Relative path (inside the package) or absolute path to a YAML file defining the routes (see Routes YAML Format below).
<plugin>.filters string[] [] List of routes filter identifiers to be instantiated (see Routes Filter Plugins).
<plugin>.<filter>.plugin string "" Type of routes filter plugin (e.g., easynav_routes_maps_manager/RoutesCostmapFilter).

If both <plugin>.package and <plugin>.map_path_file are empty, the manager does not attempt to read a file and instead initializes a single default segment from (0, 0, 0) to (1, 0, 0).

If only one of the parameters is set (package without path or path without package for relative paths), initialization fails with an error.

Routes YAML Format

Routes are loaded from a YAML file with the following structure:

routes: [route0, route1]

route0:
	start: {x: 0.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 1.0, y: 0.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

route1:
	start: {x: 1.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}
	end:   {x: 2.0, y: 1.0, z: 0.0, qx: 0.0, qy: 0.0, qz: 0.0, qw: 1.0}

  • routes: ordered list of route segment identifiers.
  • Each entry under routeX defines the start and end poses of a segment.

When saving routes (via the save service, see below), the manager writes back a file with the same structure.

Routes Filter Plugins

Each entry in <plugin>.filters defines a sub-namespace <plugin>.<filter> with at least the key plugin, plus any filter-specific parameters. Filters implement the RoutesFilter interface and are executed after the RoutesMap has been written to the NavState on each update cycle.

RoutesCostmapFilter

  • Plugin Name: easynav_routes_maps_manager/RoutesCostmapFilter
  • Type: easynav::RoutesCostmapFilter
  • Description: Reads the current RoutesMap and a dynamic costmap (map.dynamic.filtered)

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package easynav_simple_maps_manager

0.2.1 (2026-02-27)

  • 0.2.0
  • Remove C++20/C++23 features and update to new MethodBase interface
  • TFInfo in RTTFBuffer
  • Final adjustements
  • Refactor to use TFInfo
  • Added missing dep
  • Added missing licenses
  • Tests and README
  • Route Maps Manager with filters. Costmap filter
  • Routes Maps manager finalized
  • Add/Remove segment
  • Interactive markers and ids in the segments
  • Basic route server
  • Contributors: Francisco Martín Rico, Francisco Miguel Moreno, Juan S. Cely G., Miguel

0.0.2 (2025-10-12)

  • Reorganization initial
  • Contributors: Francisco Martín Rico

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged easynav_routes_maps_manager at Robotics Stack Exchange