Repository navigation
Topological Map Definition
Marc Hanheide edited this page Oct 15, 2026
·
2 revisions
In the ROS 2 version the map manager publishes the map as a YAML string (
std_msgs/String) on the latched topic/topological_map_2; see Topological YAML Format. The message types below are still defined intopological_navigation_msgs(inherited from STRANDS) but are not used for the map topic.
All definitions live in the topological_navigation_msgs package.
string name # topological map name, generally the same as in the pointset field
string map # 2D metric map name (not used currently)
string pointset # name of the group of nodes composing the map, typically the same as name
string last_updated # last time the map was modified
topological_navigation_msgs/TopologicalNode[] nodes
Nodes are the locations the robot navigates to, expressed in the map frame.
string name # node name
string map # 2D metric map name (not used currently)
string pointset # name of the group of nodes composing the map
geometry_msgs/Pose pose # node pose in the map frame
float64 yaw_goal_tolerance # tolerance in radians
float64 xy_goal_tolerance # tolerance in metres
Vertex[] verts # vertices of the influence zone, relative to the node pose
Edge[] edges # outward edges connecting this node to others
string localise_by_topic # configuration for localisation by topic
Edges are normally stored inside the node they originate from.
string edge_id # identifier of the edge
string node # name of the destination node
string action # name of the navigation action
float64 top_vel # maximum speed in [m/s]
string map_2d # name of the 2D map
float64 inflation_radius # obstacle inflation radius on this edge, 0 for default
string recovery_behaviours_config # not currently used, typically a JSON string
float32 x
float32 y
| Type | Kind | Used for |
|---|---|---|
GotoNode |
action | Navigate to a node (/topological_navigation) |
ExecutePolicyMode |
action | Execute a pre-computed NavRoute
|
RecordMap |
action | Record a map (/record) |
BuildTopPrediction |
action | Legacy prediction interface |
LocalisePose |
service | Current and closest node for an arbitrary pose |
WriteTopologicalMap, LoadTmap
|
service | Save and load maps (map manager, map recorder) |
GetRouteTo, GetRouteBetween
|
service | Route queries (types only) |
EvaluateEdge, EvaluateNode, ReconfAtEdges, LoadTopoNavTestScenario, RunTopoNavTestScenario
|
service | Legacy, no ROS 2 implementation in this repository |
NavRoute, TopologicalRoute, ClosestEdges, NavStatistics, CurrentEdge, TopologicalOccupiedNode
|
message | Route, localisation and statistics topics |
AddNodeReq, AddEdgeReq, SetInfluenceZoneReq, UpdateEdgeConfigReq
|
message | Map editing request types |
The full field listing of every message, service and action is in the repository README.