# Changes

## Junction Style Guide

, 5 years ago
<!--Editorial Reminders--><!--To Do - Bow Tie intersections --><!--To Do - U-Turn Solutions for "Road not connected" error -->
{{construction
| contact = http://www.waze.com/forum/viewtopic.php?f=276&t=86666
| open = no
| revision = yes
| section = no| talk = noyes
}}
== Simple is better ==
When representing junctions (a.k.a. , intersections, interchanges, cross roads, corners, etc.) between roads, we sometimes have the Waze map does not need to blur perfectly match the lines between the physical and logical worldsroad layouts it represents. The primary goal should be is to represent things the real world as simply as possible in the maps and only introduce complexity in the maps to deal with an issueaddress complex issues.
== The Basics ← START HERE basics ==This guide requires a complete understanding of editing the maps with [[Waze Map Editor]] (WME).
=== What Map editing 101 ===Although it is highly recommended to read the [[Waze_Map_Editor#Editing_Manual|Editing Manual]] before touching the map, it is a required that you do not continue with this guide until you have read the following:* [[Map_Editing_Quick-start_Guide|Map Editing Quick-start Guide]]* [[Creating_and_Editing_street_segments#Junctions|Moving and removing junctions]] === Junction? definition ==={| class="Wikitable floatright"| [[Image:Junction_selected.png|50px|border]]| [[Image:Uneditable_junction.png|50px|border]]| [[Image:junction_unsaved.png|50px|border]]|}The [[Glossary#Junction_or_Junction_Point|Glossary on Junctions]] provides details on how junctions can appear differently in the editor depending on its state or condition.
A junction is made up of three things:
== Controlling Turn Instructions ==
{| class="Wikitable floatright" cellpadding="5" border="1" style="text-align:center; border: 1px solid darkgray;"
|-
| Keep Right || Keep Left
|-
| Turn Right || Turn Left
|-
| Exit Right || Exit Left
|}
Turn instructions are critical for proper client navigation. They are controlled by:
* The angle set between segments at junctions.
== Surface Streets ==
=== Y Intersections ==={| class="Wikitable floatright"| [[File:Jct 3 90.png|x100px|border]]| [[File:Jct 4 90.png|x100px|border]]| [[File:Jct ramp no geo.png|x100px|border]]|-| colspan="3"|[[File:Jct bowtie.png|x100px|center|border]]|}The most basic junctions form three-way and four-way intersections. Some variations resemble bow ties.
When surface streets meet in a Y formation and we must carefully consider how they are mapped to provide useful navigation instructions. As the [[How Waze determines turn / keep / exit maneuvers|How Waze Determines turn/keep/exit maneuvers]] page explains, segment names and geometry are very important in determining what navigation instructions are given. In the example below, the multi-lane surface street all cases it is known as Main Street to the west and Atlantic Ave important to the east. The name change occurs when Main St branches off as a regular surface street. :[[File:Jct Y ex aerialconfigure these intersections properly.png]] The description above Detailed information is how a human would probably describe the situation, but as you can see in the image above, a more technical description would be that Main St travels in a perfectly straight line and Atlantic Ave branches off of it. But if we map it that way covered in the editor, we create a major problem. :[[File:Jct Y ex map bad.pngJunction Style Guide/Intersections|Intersections]]article. Since the multi-lane segment of Main St and the regular street segment of Main St have the same name, the routing engine automatically considers that to be "straight". If the two sections line up in a straight line the way they appear from the sky, then we are reinforcing the idea that "straight" is Main St. to Main St.{{clear}}
But as a typical driver would want, "straight" should be the path that remains on the multi-lane roadway, regardless of what the name is. To make sure the routing engine understands the proper treatment of the junction, we have to be deliberate with the segment geometry of all three involved segments. We end up with something like this:

:[[File:Jct Y ex map.png]]

Now the geometric definition of straight is the multi-lane portion of Main St. onto Atlantic Ave., since we have made that transition as close to zero degrees as possible. The regular street portion of Main St. now branches off at an angle close to 90 degrees. The routing engine should recognize that a turn is required. So the result is that Main St. to Atlantic Ave. has no announced turn, and multi-lane Main St. to surface road Main St. has a turn announced. Exactly what most drivers would expect in the real world.
A Cul-de-sac (a.k.a. Court in the US) is a common treatment of a dead end street in a residential neighborhood.
In almost every situation, a cul-de-sac should be treated exactly as a dead end street, with the final junction indicator in the center of the bulb of the cul-de-sac. Be sure the free end of the final road segment has small blue dot displayed at the tip (when not editing or selecting the segment). If there is no blue dot, please correct it by following the steps for [[Creating and Editing street segmentsCreating_and_Editing_street_segments#Fix the endFix_the_end-node on culnode_on_cul-de-sacs and deadsacs_and_dead-ends|fixing dead ends]].
:[[FileImage:Jct culJct_cul-de-sac exsac_ex.png|left|border]]The junction indicator should be located close to the middle of the bulb and NOT near the outer edges. If the end of the segment is positioned along the perimeter of the bulb, there may be difficulty in processing client routes. Waze only considers the road fully traversed if both ends of a segment are crossed. If the end of the segment happens to be on the curb (or off of the road surface if aerials are not exactly aligned), it will be very difficult for a driver to cross end end of the road segment. With the junction in the middle of the visual road, we give a driver a good chance to cross the end of the segment no matter where they drive within the bulb. The exception to this guidance is given in the next example.{{clear}}
The junction indicator should be located close to the middle of the bulb and NOT near the outer edges{| class="Wikitable floatright"| [[Image:Jct_cul-de-sac_island_ex. If the end of the segment is positioned along the perimeter of the bulb, there may be difficulty in processing client routes. Waze only considers the road fully traversed if both ends of a segment are crossed. If the end of the segment happens to be on the curb (or off of the road surface if aerials are not exactly aligned), it will be very difficult for a driver to cross end end of the road segment. With the junction in the middle of the visual road, we give a driver a good chance to cross the end of the segment no matter where they drive within the bulb. The exception to this guidance is given in the next examplepng|border]]| [[Image:Jct_cul-de-sac_island_ex_road.png|border|x199px]]|}The This cul-de-sac below, with a small island, should be treated as a basic dead end with no loop. The island can be ignored, as there is no significant routing question for the driver once they get to the cul-de-sac. :[[File:Jct cul-de-sac island ex.png]]
As for placement of the final junction indicator, here we may get better results by moving the junction out from the true center and over to the outer perimeter of the central island. The shift ensures that the driver has a good opportunity to cross the end of the segment.
{{clear}}
:[[File:Jct cul-de-sac island ex road.png]] However, if the cul-de-sac has a very large bulb with a large island in the middle, it may better be treated as a [[#Loops|Loop]]. A good rule of thumb is if you were standing at the end of the cul-de-sac, can you tell that it is just a cul-de-sac? Or does it look like two different roads? If you see an island, but are not sure if it is significant, leave the Loop out. If "Missing Road" errors occur on the road, then add a Loop.
==== Loops ====
Loops are roads that you can enter, and without reversing course, end up at the same place you started.
'''LOOP RULES'''===== Loop rules =====
# A road segment must not start and end on the same junction node (loop back onto itself)
# Two segments must not share the same two end junctions
# Any loop must be made up of 3 three or more segments
If these rules are not followed, the routing server will have difficulty in providing routes into and out of the loop. Any loop broken into three or more segments by a junction will not have this problem.
If there are no natural interruptions (side-streetsor driveways) to the loop and the entire loop is represented by one road segment that connects with itself, you must [[Map Editing Quick-start Guide#Splitting a segment|insert a superfluous junction nodenodes]] along the loop segment. The specific location does not matter, but most people put it near the half-way point of the segment.
'''Here is one example showing a proper 3-segment loop:'''<br />{| class="Wikitable floatright"| [[File:Loop_3-part_1.png|x180px|border]] | [[File:Loop_3-part_2.png|x180px|border]]|}Here is an example loop showing the proper three segment configuration. Note that when selecting the two adjacent segments the bridge icon appears tempting an editor to link the two segments. That would be counter productive to the routing server though. The only work around is to either lock the segments at a higher level or find a driveway to add to the map on this road causing the bridge icon not to appear at that point.
{{clear}}
<br />'''[[File:Loop_3-part_3.jpg|left]] This is an example of an improper 2-segment loop:'''<br />[[File:Loop_3-part_3.jpg|center]]The routing server will have a difficult time properly routing traffic to or from either of these segments. As indicated above, add a junction point along either segment to create three segments in this loop.
{{clear}}
<br />'''Here [[File:Loop_3-part_6.jpg|right]] This is a side-by-side example of a proper 3-segment loop and improper 2-segment loop in a parking lot:'''<br />[[File:Loop_3. The 2-part_6segment loop can be fixed by adding a junction node along either segment.jpg|center]]
{{clear}}
<br />
'''NOTE:''' It is very easy for an editor to find the see an extra junction nodealong a segment, assume it is truly superfluous, and delete it, when in fact it is necessary and should remain in place! This problem is magnified if the loop road is large or shaped so it is not obvious that it is a loop. One solution is to identify a path or driveway branching from the loop road and add it to the map, forcing a 3-way junction that would be less likely to be deleted.
'''NOTE:''' ===== Loop save errors =====The Waze Map Editor may be resistant in editing a loop that does not already follow the rule that it must be broken in two. If you run into saving errors, try one of the following approaches:.
If the loop and the road leading to it have the '''same ''' name:
*#Select the loop and the road*click #Click the bridge icon that appears (one end of the loop will disconnect from the other)*split #Split the loop*reconnect #Reconnect the disconnected end of the loop*confirm #Confirm turns
If the loop and the road leading to it have '''different ''' names:
*draw #Draw a new road segment that connect to the loop/road junction*give #Give that new road the same exact name as the loop*select #Select the loop and the new road segment*click #Click the bridge icon that appears (one end of the loop will disconnect from the other)*split #Split the loop*reconnect #Reconnect the disconnected end of the loop*confirm #Confirm turns
=== Roundabouts and Traffic Circles ===
Please see the [[Roundabout]] page for a full discussion of this special type of junction.
:[[FileImage:Jct at grade keepJct_at_grade_keep.png]] With exceptions, don't set these segments as ramps! Watch out for all of the turns you need to restrict. For a full discussion, see [[At-grade connectors]]. === Bow tie intersections === {{Anchor|Bowtie}} The "bow tie" form of an intersection both simplifies and provides enhanced control when a dual carriageway road and a single carriageway road intersect. :[[File:Jct bowtie.png]] By reducing the intersection to a single point, we gain control over U-turns and avoid short segments which may introduce complexity and routing issues. The first instinct may be to map the intersection as the road is physically constructed -- using an "H" (a sideways H in this case) where each one-way roadway intersects the cross street. But if that method is used, there is no way to restrict the U-Turn movement from one one-way direction to the other since the center of the "H" carries both U-Turn traffic ''and'' traffic turning from the cross street. But mapped as a bow tie, there is a specific turn arrow that can allow or disallow the U-turn as needed.
AdditionallyWith exceptions, the center segment don't set these segments as ramps! Watch out for all of the H may introduce complexity turns you need to the maprestrict. If the cross street changes names For a full discussion, see [[at the junction, care must be taken to make the center segment have no name assigned. This will cause the segment to inherit the appropriate name depending on the direction of travel. This center segment is then different from either side so future "select all segments" operations in the editor will not capture this segment which may complicate editing-grade connectors]].
Finally, the Waze systems also have difficulty in capturing average speeds for short segments, especially when traffic does not travel across a majority of the segment which may happen in a wide intersection. The center of the H would be totally vertical in the example above, but turning traffic would be traveling in more of a 45 degree angle. Add in the inaccuracy of many consumer GPS chips == Interchanges and wide intersections and you may have traffic never actually driving over the segment for certain movements.ramps ==
An '''NOTE:interchange''' Be aware of the geometry used in the bow tie. If the angles is a road junction where two roads are too steep (45 degrees or greater) a driver traveling along one of the one-way segments may be told to "turn" or "stay" at the intersection instead of receiving no instruction. connected by dedicated roadways, called '''NOTE:ramps''' If the center of the physical "H" is long and/or allows traffic to stop and queue within the median of the divided roadway, a bow tie may . The roads connected by an interchange do not be appropriate. In these cases the segment may be long enough to justify being mapped especially if the intersect one-way roads would have to deviate greatly from their physical location to meet in a single point. == Ramps == Ramps have a very specific purpose in Waze. They are intended to connect segments of Minor Highwaysanother directly, Major Highwaysand if they cross, and Freeways to roads where there are no atthe crossing is grade-grade crossingsseparated.
=== When to use ramps ===
The Use of the {{Ramp}} type is governed by the following conditions must be met for the use of ramps to be appropriaterules:* [[Road types/USA]]* [[At-grade connectors]]
#Two roads cross over/under each other with no at-grade junction#At least one of the roads are of these types##Minor Highway##Major Highway##Freeway##=== Rampand interchange style ===
== Special Cases ==

=== Transitions ===
{| class="Wikitable floatright"| [[Image:Jct_transition.png|x150px|border]]| [[Image:Jct_transition_90.png|x150px|border]]|}
A transition is a non-junction depicted using a junction node.

:[[File:Jct transition.png]] [[File:Jct transition 90.png]]
Valid examples of where to use a Transition node include:
# City Limits
# Part of a [[#Loops|Loop Road]]
#Road name changes#City Limits#Road Direction changes#Part of a [[#Loops|Loop Road]]Before the current house numbering system came into use, transition nodes were used to aid in house numbering, but that is no longer required.
An old reason to use a There may be existing transition node was to indicate segments of nodes on the map for other reasons like remaining after a connecting road with different house numbering. With is deleted, inherited from to the new point numbering scheme being adopted by Wazeoriginal base map import when rivers and streams created junctions, this is no longer a reason to use transition nodesetc.
There may be existing Transition nodes on the map for other reasons (left after a connecting road was deleted, inherited from to the original base map import when things such as rivers and streams created junctions, etc.). As long as we you are '''certain''' it is not a valid Transition transition node, a superfluous junction node may be [[Map Editing QuickMap_Editing_Quick-start Guidestart_Guide#Delete a JunctionDelete_a_Junction|deleted]]. Doing so will simplify the map, eliminate turn restrictions to maintain, and reduce computing resource needs. Also consider removing the [[Creating and Editing street segmentsCreating_and_Editing_street_segments#Adjusting road geometry Adjusting_road_geometry_.28nodes.29|geometry node]] which will replace the junction node you delete, if that geometry node is not needed.

In certain situations it may be necessary to add road segments that are un-drivable in order to provide accurate navigation instructions.
==== Actual ====

A valid use of this technique is at the temporary end of a freeway. As a freeway is built, it is often opened in sections, up to a certain exit. If we map this as a regular freeway segment leading to a ramp segment, no announcement will be made for that final exit, no matter what we name the exit ramp.
==== Fake ====

''(coming soon)''
[[Image:Jct_4_offset.png|left|x150px|border]]
Sometimes you will find two roads which cross, where one does not quite line up with the other.

:[[File:Jct 4 offset.png]]
There are a few things we need to look at in this situation.
{{clear}}
:* Do the roads actually line up in reality? If so we need to modify the junction to be a basic 4-way junction.
{| class="Wikitable floatright"
|[[Image:Jct_4_offset_align.png|x150px|border]]
|[[Image:Jct_4_offset_align_ex.png|x150px|border]]
|}
:* Do the roads ALMOST line up in reality? If you were giving instructions to a person and would tell them to go straight with no mention of any slight turn or jog, then we want to make it into a 4-way junction. You may need to "split the difference" and not follow the centerline of either road to achieve this. The angles are exaggerated in this next example to show how the junction is forced to be close to 90 degrees, then we taper to the true centerlines of the roads. In practice this can be much more gradual and/or done while zoomed in very close.
[[Image:Jct_4_offset_ex.png|right|x150px|border]]
:* Finally, is there a true separation between the roads? Would you need to say for example "turn left then make an immediate right"? If so then we will want to leave the junction such that the two sides do not align.
{{clear}}
#Do the roads actually line up in reality? If so we need to modify the junction to be a basic 4-way junction.#Do the roads ALMOST line up in reality? If you were giving instructions to a person and would tell them to go straight with no mention of any slight turn or jog, then we want to make it into a 4-way junction. You may need to "split the difference" and not follow the centerline of either road to achieve this. The angles are exaggerated in this next example to show how the junction is forced to be close to 90 degrees, then we taper to the true centerlines of the roads. In practice this can be much more gradual and/or done while zoomed in very close.<br/>[[FileImage:Jct 4 offset align.png]] [[File:Jct 4 offset align exJct_4_offset_sep_ex.png|left|x150px|border]]#Finally, is there a true separation between the roads? Would you need to say for example "turn left then make an immediate right"? If so then we will want to leave the junction such that the two sides do not align.<br/>[[File:Jct 4 offset ex.png]]<br/>Since we want to avoid very short segments of road (the GPS chips in consumer devices can be very inaccurate which may make it seem that a driver skipped right over a short segment. This will result in [[Map Problems in Waze Map EditorMap_Problems_in_Waze_Map_Editor|automated map errors]] and possible route recalculations in the client,) it may be wise to shift the side roads as far apart from each other as possible with them still in the proper location (along the far curb lines for a residential street for example). This will maximize the length of the short segment between the side roads.<br/>[[File:Jct 4 offset sep ex.png]]
[[Category:Style Guides|Style_Guides]]<br/>[[Category:Convert to Subpages|Convert_to_Subpages]]
9,309
edits