Intersection Modeling
An Intersection is where two or more highways meet or cross each other. The traced highway should represent the traffic flow for a navigation software to provide turn-by-turn instruction.
Source Wikipedia By Mike Gonzalez CC BY-SA 3.0 via Wikimedia Commons
Over the history of OpenStreetMap, mappers have used different approaches to model various types of intersections. The more the number of roads intersect, the more complex the intersection becomes. In this guide we are capturing different cases of intersections with some best practices and recommendations to follow during mapping.
Intersection types
Intersection of two bi-directional ways
A bi-directional highway allows traffic flow in both directions without any physical separation. All the ways passing through the intersection should intersect at a common point to form a junction.
✅ Recommended | ❌ Not recommended |
---|---|
Bi-directional intersection with traffic island
Bi-directional highway intersection with small traffic island do not require separation in the road geometry. Instead, add the traffic_calming=island
tag on the node where the divider begins.
✅ Recommended | ❌ Not recommended |
---|---|
Intersection between a bi-directional highway and dual-carriageway
A dual-carriageway is a physically divided highway where the traffic flows in opposite directions. When a dual-carriageway and a bi-directional highway intersect at a junction, they should be modeled to follow the traffic flow rule by intersecting in parallel and perpendicular to each other. Merging the highway nodes (in a sausage shape) in the middle of the junction leads to confusing turn announcement and route line.
✅ Recommended | ❌ Not recommended |
---|---|
Intersection between dual-carriageways
An intersection where two dual-carriageways intersect should be perpendicular to each other (in the form of #
). Avoid merging the two ways in the middle of the junction.
✅ Recommended | ❌ Not recommended |
---|---|
Three-way intersection
A three-way intersection has three arms meeting at a single point forming a T-shape (perpendicular connection) or Y-shape (non-perpendicular connection). It is not necessary that the highways meeting this junction should be perpendicular to each other but they should not be merged in the middle of the junction.
Y-shaped intersection
✅ Recommended | ❌ Not recommended |
---|---|
✅ Recommended | ❌ Not recommended |
---|---|
✅ Recommended | ❌ Not recommended |
---|---|
✅ Recommended | ❌ Not recommended |
---|---|
T-shaped intersection
✅ Recommended | ❌ Not recommended |
---|---|
✅ Recommended | ❌ Not recommended |
---|---|
Merging after intersection
In the real world, there are dual-carriageway which becomes a bi-directional highway after crossing the junction. These intersectiona are tricky to map as there are many ways of modeling such intersection which will replicate the actual traffic flow. After testing different models, merging the junction after crossing the intersection worked well in cases of turn announcement and guidance.
The merging of dual to bi-directional highway shouldn’t make a sharp angle too close to junction - keep a distance of 10-20 meters from the intersection. This type of modeling keeps the balance between cartography and navigation approach to mapping. (Based on the discussion in the US-Talk mailing list)
Intersection between dual-carriageways and bi-directional highways
Here are several examples of highways changing from dual-carriageway to bi-directional highway. Best practice is to form a #
in the middle of the junction then merge the dual-carriageway afterwards.
✅ Recommended | ❌ Not recommended |
---|---|
Intersection between three dual-carriageways and one bi-directional road
✅ Recommended | ❌ Not recommended |
---|---|
Intersection between two dual-carriageways and two bi-directional roads
On a four-way intersection where there are two dual-carriageways changing to a bi-directional highway, form a #
at the intersection then merge both the dual-carriageways after the crossing.
✅ Recommended | ❌ Not recommended |
---|---|