Relation:manoeuvre
![]() |
Description |
---|
overrides the router's classification of a given manoeuvre ![]() |
Group: routing |
Members |
Useful combination |
See also |
|
Status: in use |
Tools for this tag |
|
A manoeuvre (maneuver) relation overrides a router's classification of a particular manoeuvre at a junction. It is a last-resort hint for when a router cannot reasonably infer the correct turn instruction at a complex junction based on common heuristics like the turn angle or number of connecting ways.
Usage
Despite this relation type, tagging that caters to the idiosyncracies of a particular router is discouraged. Manoeuvre relations can be seen as less harmful than contorting the road geometry or adding fake streets, which can be detrimental to accurate rendering. [1][2] Before resorting to a manoeuvre relation, check whether routers produce the correct guidance instruction for the manoeuvre. If one router produces suboptimal guidance while the others produce acceptable guidance, it may be a bug in that one router – be sure to report the issue to the router's developers.
How to map
As with a turn restriction relation, the relation's members should include the ways that approach and lead away from the junction, along with the node at which the manoeuvre is performed.
A manoeuvre relation is tagged with the following tags:
- direction=*
- The direction of travel. OSRM recognizes the following values:
Note that the tag values understood by OSRM differ from valid turn=* values: uturn
instead of reverse
, straight
instead of through
.
Software support
This relation type is intended as an override of routing engine behaviour. OSRM 5.16.0 added support for type=maneuver relations, using the American spelling. [3] OSRM 5.17.0 added support for the type=manoeuvre and type=maneuvre spellings, the former of which is now preferred by OSRM. [4] In the future, more support for turn=* in OSRM may make some manoeuvre relations unnecessary. [5]
There is no preset for manoeuvre relations in iD, but you can create a turn restriction relation using the mini-editor, then replace type=restriction restriction=* with type=manoeuvre manoeuvre=* direction=*.
Tagging errors
The British spelling manoeuvre=* is preferred, but OSRM also supports the American spelling maneuver=* and a common misspelling, maneuvre=*:
See also
- not:=* another tool for overriding software behaviour
- turn=*
- junction=*
- Relation:connectivity
External links
- Manoeuvre override tag – full details, illustrations, and rationale at the OSRM wiki
- Turn instruction override – an analogous concept used by Waze mappers