Interactive junction instruction algorithm: Difference between revisions View history

(Marked as global wiki page)
 
(35 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<!--if the section parameter is defined, do not place the visible banner, only as the code block for the top of a section-->{{GlobalMark/visible}}
<!--
#####-----#####-----#####-----#####-----#####-----#####-----#####-----#####-----
####    This page has been curated  ####
####    to be included in the new    ####
####    Wazeopedia - GLOBAL Wiki.  ####
####    Please do not make any      ####
####    edits on this page without  ####
####    PRIOR CONSENSUS in the Wiki  ####
####    Updates and Discussions      ####
####    forum thread for this page.  ####
####    If a specific forum thread  ####
####    for this page doesn't exist  ####
####    please start one.            ####
####        www.waze.com/forum/      ####
####        viewforum.php?f=276      ####
#####-----#####-----#####-----#####-----#####-----#####-----#####-----#####-->
{{Construction | contact=http://www.waze.com/forum/ucp.php?i=pm&mode=compose&u=PesachZ | contacttype=user | open=no | draft=no}}
This is a clickable interactive guide to determine what instruction, if any, will be given at the junction between any 2 segments.
This is a clickable interactive guide to determine what instruction, if any, will be given at the junction between any 2 segments.


A text version of this information is [[How_Waze_determines_turn_/_keep_/_exit_maneuvers|available here]].
A text version of this information is [[How_Waze_determines_turn_/_keep_/_exit_maneuvers|available here]].
There will eventually be encyclopedia style illustrations for all the various configurations to visually describe the setup.


== Introduction ==
== Introduction ==
Understanding how and which instructions are provided requires first understanding a few concepts.
Understanding how and which instructions are provided requires first understanding a few concepts.
* This page is discussing the instruction which will be provided by the Waze server (or not provided) when traveling from one segment, through a [[Glossary#Junction_or_Junction_Point|junction]], and onto a second segment.
* This page discusses the instruction which will be provided (or not provided) by the Waze server when traveling from one segment, through a [[Glossary#Junction_or_Junction_Point|junction]], and onto a second segment.
* How [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Best Continuation|''Best Continuations'']] work. Any time the destination segment is the ''Best Continuation'' there will not be an instruction provided.
* How [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Best Continuation|''best continuations'']] work. Any time the destination segment is the ''best continuation'' no instruction will be provided by default.
* The lack of an instruction to the best continuation, as well as other default behaviors, can be overridden by the use of [[turn instruction override]]s.


While the illustrations displayed by each question may not represent every possible variation, they do represent the difference between the two options in that question. Please choose the most appropriate answer.
While the illustrations displayed by each question may not represent every possible variation, they do represent the difference between the two options in that question. Please choose the most appropriate answer.


== Definitions ==
== Definitions ==
* '''ORIGIN:''' The segment you are on before going through the junction, in other words the segment you are coming from will be referred to as '''''the origin''''', and corresponds to [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Definitions|''s-in'']] in the [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#The_algorithm_.2F_list_of_conditions|the algorithm text provided by Waze staff]].
* '''Origin:''' The segment you are on before going through the junction, in other words the segment you are coming from will be referred to as '''''the origin''''', and corresponds to [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Definitions|''s-in'']] in the [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#The_algorithm_.2F_list_of_conditions|the algorithm text provided by Waze staff]].
** In terms of navigation, the segment you are being routed <u>from</u> is '''''the origin'''''.
** In terms of navigation, the segment you are being routed <u>from</u> is '''''the origin'''''.
* '''DESTINATION:''' The segment you will be on after the junction, in other words the segment you are going to will be referred to as '''''the destination''''', and corresponds to [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Definitions|''s-out'']] in the [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#The_algorithm_.2F_list_of_conditions|the algorithm text provided by Waze staff]].
* '''Destination:''' The segment you will be on after the junction, in other words the segment you are going to will be referred to as '''''the destination''''', and corresponds to [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Definitions|''s-out'']] in the [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#The_algorithm_.2F_list_of_conditions|the algorithm text provided by Waze staff]].
** In terms of navigation, the segment you are being routed <u>on to</u> is '''''the destination'''''.
** In terms of navigation, the segment you are being routed <u>on to</u> is '''''the destination'''''.
* '''BRANCH:''' Any segments other than ''the destination'' which leave the junction at an angle less than {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}} will be referred to as '''''other branches''''', and corresponds to [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Definitions|''s-N'', or ''s-1,2,3,4...'']] in the [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#The_algorithm_.2F_list_o,f_conditions|the algorithm text provided by Waze staff]].
* '''Branch:''' Any segments other than ''the destination'' which leave the junction at an angle less than {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}} will be referred to as '''''other branches''''', and corresponds to [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#Definitions|''s-N'', or ''s-1,2,3,4...'']] in the [[How_Waze_determines_turn_/_keep_/_exit_maneuvers#The_algorithm_.2F_list_o,f_conditions|the algorithm text provided by Waze staff]].
* '''OVERLAPPING:''' When the beginning portion two segments are directly on top of each other, meaning they both leave the junction at the exact same angle as each other, they will be referred to as an '''''overlapping segment'''''.
* '''Overlapping:''' When the beginning portion two segments are directly on top of each other, meaning they both leave the junction at the exact same angle as each other, they will be referred to as '''''overlapping segments.'''''
* '''HIGHWAY:''' Any road typed in Waze as a {{Freeway}}, {{Major Highway}}, or {{Minor Highway}}, will be referred to in this page as a '''[[Road_types/USA#Highways|highway]]'''.
* '''Highway:''' Any road typed in Waze as a {{Freeway}}, {{Major Highway}}, or {{Minor Highway}}, will be referred to in this page as a '''[[Road types#Highways|highway]]'''.
* {{anchor|Turn angle}}'''TURN ANGLE:''' The '''''turn angle''''' is the angle from ''the origin'' to ''the destination''. A perfectly straight road with a junction in the middle would have a turn angle of 0°. The angle then gets wider as you turn to either side. A perfect left or right turn would be 90°. A U-turn at a junction between two segments would represent a 180° turn.
* {{anchor|Turn angle}}'''Turn angle:''' The '''''turn angle''''' is the angle from ''the origin'' to ''the destination''. A perfectly straight road with a junction in the middle would have a turn angle of 0°. The angle then gets wider as you turn to either side. A perfect left or right turn would be 90°. A U-turn at a junction between two segments would represent a 180° turn.
:{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
:{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=3 | Turn Angles
! scope="col" colspan=3 | Turn Angles
Line 47: Line 27:
| [[File:Turn_angle_geo_line.png|200px|center]]
| [[File:Turn_angle_geo_line.png|200px|center]]
|-
|-
| Standard Turn Angle
| Standard turn angle
| 37° Angle
| 37° angle
| 90° Dogleg Geometry Node
| 90° dogleg
|}
|}
*'''NO-NAME Segments:''' A segment with no name (the "none" check-box for street name is checked) is considered to have "no-name" as a name for the Best Continuation algorithm. So two segments with no name, will be considered to have identical names, even if they would inherit different names for TTS.
*'''No-name segments:''' A segment with no name (the "none" check-box for street name is checked) is considered to have "no-name" as a name for the Best Continuation algorithm. So two segments with no name, will be considered to have identical names, even if they would inherit different names for TTS.
* {{Anchor|roundabout angle}}'''ROUNDABOUT ANGLE:''' The '''''Roundabout angle''''' is the angle of any segment connected to the roundabout from the perspective of ''the origin''. The actual ''turn angle'' of the segments is irrelevant.<br>To explain;
* {{Anchor|roundabout angle}}'''Roundabout angle:''' The '''''roundabout angle''''' is the angle of any segment connected to the roundabout from the perspective of ''the origin''. The actual ''turn angle'' of the segments is irrelevant.<br>To explain;
** Draw an imaginary line straight through the roundabout to the other side of the roundabout from junction node where ''the origin'' joins the roundabout. This will represent a 0° '''''Roundabout angle''''', any deviation to the right or left will increase the angle.
** Draw an imaginary line straight through the roundabout to the other side of the roundabout from junction node where ''the origin'' joins the roundabout. This will represent a 0° '''''roundabout angle''''', any deviation to the right or left will increase the angle.
** Draw another imaginary line across the roundabout exactly perpendicular to the first imaginary line. This will represent a 90° '''''Roundabout angle''''' to either side.
** Draw another imaginary line across the roundabout exactly perpendicular to the first imaginary line. This will represent a 90° '''''roundabout angle''''' to either side.
** For more info see the [[Roundabouts/USA#Understanding_navigation_instructions|roundabouts page]]
** For more info see the [[Roundabouts#Understanding_navigation_instructions|roundabouts page]]


{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
Line 68: Line 48:
|Not all other segments are within the allowed ±15° from either 0° or 90°.
|Not all other segments are within the allowed ±15° from either 0° or 90°.
|}
|}
{{mbox|type=important|text=The allowed range for roundabouts may actually be less than ±15°, this is currently being tested.}}


== Directions ==
== Directions ==
To use this interactive flowchart;
To use this interactive flowchart;
:* Start with the [[#01|first question]] in [[#The_interactive_algorithm|The Interactive Algorithm]].
:* Start with the [[#01|first question]] in [[#The_interactive_algorithm|the interactive algorithm]].
:* Click on the appropriate answer which best matches your situation. A new question will jump to the top of the screen
:* Click on the appropriate answer which best matches your situation. A new question will jump to the top of the screen
:* Continue answering the questions until an [[#The_instructions|instruction]] is displayed at the top of the screen.
:* Continue answering the questions until an [[#The_instructions|instruction]] is displayed at the top of the screen.
Line 94: Line 73:
*It will work even the OUT segment (the one leaving the split) has no Primary name.
*It will work even the OUT segment (the one leaving the split) has no Primary name.
{{ForumLink|forum=http://www.waze.com/forum/viewtopic.php?f=276&t=91105&p=894147#p892470}}
{{ForumLink|forum=http://www.waze.com/forum/viewtopic.php?f=276&t=91105&p=894147#p892470}}
~{{Username|PesachZ}}}}
~{{User:PesachZ/User}}}}


== The interactive algorithm ==
== The interactive algorithm ==
{| style="float: right; color:lightgray; font-size:65%; "
| (31)
|}
{{anchor|31}}Is voice prompt set to '''Waze Selected'''?
{| border="1" cellpadding="10"
|-
! scope="col" bgcolor="lawngreen" | '''[[#32|YES]]'''
|}
{| border="1" cellpadding="10"
|-
! scope="col" bgcolor="orangered" | '''[[#The_navigation_instructions|<span style="color:white">NO: A turn instruction override is set. See the navigation instructions</span>]]'''
|}
----
{| style="float: right; color:lightgray; font-size:65%; "
| (32)
|}
{{anchor|32}}Is the origin completely inside a [[junction box]]?
{| border="1" cellpadding="10"
|-
! scope="col" bgcolor="lawngreen" | '''[[Junction box#Voice prompt|YES => Junction box routes with turn instruction overrides suppress further instructions inside the junction box.]]'''
|}
{| border="1" cellpadding="10"
|-
! scope="col" bgcolor="orangered" | '''[[#30|<span style="color:white">NO</span>]]'''
|}
----
{| style="float: right; color:lightgray; font-size:65%; "
| (30)
|}
{{anchor|30}}Is the turn angle from ''the origin'' to the ''the destination'' greater than 170°?
{| border="1" cellpadding="10"
|-
! scope="col" bgcolor="lawngreen" | '''[[#Make a U-turn|YES => Make a U-turn]]'''
|}
{| border="1" cellpadding="10"
|-
! scope="col" bgcolor="orangered" | '''[[#01|<span style="color:white">NO</span>]]'''
|}
----
{| style="float: right; color:lightgray; font-size:65%; "
{| style="float: right; color:lightgray; font-size:65%; "
| (01)
| (01)
Line 120: Line 162:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#No_Instruction|NO => No Instruction]]
! scope="col" bgcolor="orangered" | '''[[#No_instruction|<span style="color:white">NO => No instruction</span>]]
|}
|}


Line 129: Line 171:
|}
|}


{{anchor|19}}Do ''the origin'' and ''the destination'' meet at a [[Roundabouts/USA|Roundabout]]?
{{anchor|19}}Do ''the origin'' and ''the destination'' meet at a [[Roundabouts|roundabout]]?




Line 147: Line 189:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#02|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#02|<span style="color:white">NO</span>]]'''
|}  
|}  


Line 174: Line 216:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#04|NO, the turn angle is less {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}}]]'''
! scope="col" bgcolor="orangered" | '''[[#04|<span style="color:white">NO, the turn angle is less {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}}</span>]]'''
|}  
|}  


Line 183: Line 225:
|}
|}


{{mbox|type=speculation|text='''SPECULATION NOTE:''' ''This is unconfirmed'' Turns with angles greater than 150° will follow the same instruction path as [[#03|{{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Turn threshold}}-150°]], but the Waze routing server will penalize this turn, and avoid routing through it.}}
{{mbox|type=speculation|text='''Speculation note:''' ''This is unconfirmed'' Turns with angles greater than 150° will follow the same instruction path as [[#03|{{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Turn threshold}}-150°]], but the Waze routing server will penalize this turn, and avoid routing through it.}}




Line 199: Line 241:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" | '''[[#Turn_Left|Left => Turn Left]]'''
! scope="col" | '''[[#Turn_left|Left => Turn left]]'''
|}
|}


Line 206: Line 248:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" | '''[[#Turn_Right|Right => Turn Right]]'''
! scope="col" | '''[[#Turn_right|Right => Turn right]]'''
|}  
|}  


Line 226: Line 268:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | ''' [[#No_Instruction|NO => No Instruction]]'''
! scope="col" bgcolor="orangered" | ''' [[#No_instruction|<span style="color:white">NO => No instruction</span>]]'''
|}  
|}  


Line 247: Line 289:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#14|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#14|<span style="color:white">NO</span>]]'''
|}
|}


Line 261: Line 303:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="lawngreen" | '''[[#No_Instruction|YES => No Instruction]]'''
! scope="col" bgcolor="lawngreen" | '''[[#No_instruction|YES => No instruction]]'''
|}
|}


Line 267: Line 309:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#05|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#05|<span style="color:white">NO</span>]]'''
|}
|}


Line 287: Line 329:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#10|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#10|<span style="color:white">NO</span>]]'''
|}
|}


Line 307: Line 349:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#09|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#09|<span style="color:white">NO</span>]]'''
|}
|}


Line 327: Line 369:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#No_Instruction|NO => No Instruction]]'''
! scope="col" bgcolor="orangered" | '''[[#No_instruction|<span style="color:white">NO => No instruction</span>]]'''
|}
|}


Line 347: Line 389:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#20|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#20|<span style="color:white">NO</span>]]'''
|}
|}


Line 367: Line 409:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#26|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#26|<span style="color:white">NO</span>]]'''
|}
|}


Line 387: Line 429:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Keep.2FStay_Right|NO => Keep/Stay Right]]'''
! scope="col" bgcolor="orangered" | '''[[#Keep.2Fstay_right|<span style="color:white">NO => Keep/stay right</span>]]'''
|}
|}


Line 396: Line 438:
|}
|}


{{anchor|21}}Is ''the origin'' a [[Road_types/USA#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})
{{anchor|21}}Is ''the origin'' a [[Road types#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})




Line 407: Line 449:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#23|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#23|<span style="color:white">NO</span>]]'''
|}
|}


Line 416: Line 458:
|}
|}


{{anchor|22}}Is ''the destination'' a [[Road_types/USA#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})
{{anchor|22}}Is ''the destination'' a [[Road types#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})




{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2FStay_Left|YES => Keep/Stay Left]]'''
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2Fstay_left|YES => Keep/stay left]]'''
|}
|}


Line 427: Line 469:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Exit_Left|NO => Exit Left]]'''
! scope="col" bgcolor="orangered" | '''[[#Exit_left|<span style="color:white">NO => Exit left</span>]]'''
|}
|}


Line 447: Line 489:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Keep.2FStay_Left|NO => Keep/Stay Left]]'''
! scope="col" bgcolor="orangered" | '''[[#Keep.2Fstay_left|<span style="color:white">NO => Keep/stay left</span>]]'''
|}
|}


Line 456: Line 498:
|}
|}


{{anchor|24}}Is ''the destination'' a [[Road_types/USA#Highways|highway]] ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}}), or a {{ramp}}?
{{anchor|24}}Is ''the destination'' a [[Road types#Highways|highway]] ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}}), or a {{ramp}}?




{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2FStay_Left|YES => Keep/Stay Left]]'''
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2Fstay_left|YES => Keep/stay left]]'''
|}
|}


Line 467: Line 509:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Exit_Left|NO => Exit Left]]'''
! scope="col" bgcolor="orangered" | '''[[#Exit_left|<span style="color:white">NO => Exit left</span>]]'''
|}
|}


Line 487: Line 529:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#No_Instruction|NO => No Instruction]]'''
! scope="col" bgcolor="orangered" | '''[[#No_instruction|<span style="color:white">NO => No instruction</span>]]'''
|}
|}


Line 507: Line 549:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#08|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#08|<span style="color:white">NO</span>]]'''
|}
|}


Line 527: Line 569:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#12|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#12|<span style="color:white">NO</span>]]'''
|}
|}


Line 547: Line 589:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#No_Instruction|NO => No Instruction]]'''
! scope="col" bgcolor="orangered" | '''[[#No_instruction|<span style="color:white">NO => No instruction</span>]]'''
|}
|}


Line 567: Line 609:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Keep.2FStay_Left|NO => Keep/Stay Left]]'''
! scope="col" bgcolor="orangered" | '''[[#Keep.2Fstay_left|<span style="color:white">NO => Keep/stay left</span>]]'''
|}
|}


Line 576: Line 618:
|}
|}


{{anchor|15}}Is ''the origin'' a [[Road_types/USA#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})
{{anchor|15}}Is ''the origin'' a [[Road types#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})




Line 587: Line 629:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#17|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#17|<span style="color:white">NO</span>]]'''
|}
|}


Line 596: Line 638:
|}
|}


{{anchor|16}}Is ''the destination'' a [[Road_types/USA#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})
{{anchor|16}}Is ''the destination'' a [[Road types#Highways|highway]]? ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}})




{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2FStay_Right|YES => Keep/Stay Right]]'''
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2Fstay_right|YES => Keep/stay right]]'''
|}
|}


Line 607: Line 649:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Exit_Right|NO => Exit Right]]'''
! scope="col" bgcolor="orangered" | '''[[#Exit_right|<span style="color:white">NO => Exit right</span>]]'''
|}
|}


Line 627: Line 669:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Keep.2FStay_Right|NO => Keep/Stay Right]]'''
! scope="col" bgcolor="orangered" | '''[[#Keep.2Fstay_right|<span style="color:white">NO => Keep/stay right</span>]]'''
|}
|}


Line 636: Line 678:
|}
|}


{{anchor|18}}Is ''the destination'' a [[Road_types/USA#Highways|highway]] ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}}), or a {{ramp}}?
{{anchor|18}}Is ''the destination'' a [[Road types#Highways|highway]] ({{Freeway}}, {{Major Highway}}, or {{Minor Highway}}), or a {{ramp}}?




{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2FStay_Right|YES => Keep/Stay Right]]'''
! scope="col" bgcolor="lawngreen" | '''[[#Keep.2Fstay_right|YES => Keep/stay right]]'''
|}
|}


Line 647: Line 689:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#Exit_Right|NO => Exit Right]]'''
! scope="col" bgcolor="orangered" | '''[[#Exit_right|<span style="color:white">NO => Exit right</span>]]'''
|}
|}


Line 664: Line 706:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="lawngreen" | '''[[#At the Roundabout Take the #xx Exit|YES => At the Roundabout Take the #xx Exit]]'''
! scope="col" bgcolor="lawngreen" | '''[[#At the roundabout take the #xx exit|YES => At the roundabout take the #xx exit]]'''
|}
|}


Line 671: Line 713:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#28|NO]]'''
! scope="col" bgcolor="orangered" | '''[[#28|<span style="color:white">NO</span>]]'''
|}
|}


Line 691: Line 733:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" bgcolor="orangered" | '''[[#At the Roundabout Take the #xx Exit|NO => At the Roundabout Take the #xx Exit]]'''
! scope="col" bgcolor="orangered" | '''[[#At the roundabout take the #xx exit|<span style="color:white">NO => At the roundabout take the #xx exit</span>]]'''
|}
|}


Line 705: Line 747:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" | '''[[#At the Roundabout Turn Left|Left => At the Roundabout Turn Left]]'''
! scope="col" | '''[[#At the roundabout turn left|Left => At the roundabout turn left]]'''
|}
|}


Line 711: Line 753:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" | '''[[#At the Roundabout Continue Straight|Straight => At the Roundabout Continue Straight]]'''
! scope="col" | '''[[#At the roundabout continue straight|Straight => At the roundabout continue straight]]'''
|}
|}


Line 717: Line 759:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" | '''[[#At the Roundabout Turn Right|Right => At the Roundabout Turn Right]]'''
! scope="col" | '''[[#At the roundabout turn right|Right => At the roundabout turn right]]'''
|}
|}


Line 723: Line 765:
{| border="1" cellpadding="10"
{| border="1" cellpadding="10"
|-
|-
! scope="col" | '''[[#At the Roundabout Make a U-Turn|U Turn, Back => At the Roundabout Make a U Turn]]'''
! scope="col" | '''[[#At the roundabout make a U-turn|U Turn, Back => At the roundabout make a U-turn]]'''
|}  
|}  


Line 730: Line 772:


== The navigation instructions ==
== The navigation instructions ==
=== No Instruction ===
=== No instruction ===
There will be '''no instruction''' given passing through this junction.
This can be caused by the ''best continuation'' or certain cases with an ''overlapping segment''.
It may also be set using the [[turn instruction override]] '''None'''.


<br />
<br />
<br />


There will be '''No instruction''' given passing through this junction.
This can be caused by several factors including
* ''Best Continuation''
* Certain cases with an ''overlapping segment''
* The instruction would be Continue Straight (this doesn't yet exist in the client application)


----


=== Continue straight===
This must be set manually by the turn instruction override '''Continue''' and is never automatically selected.
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 747: Line 793:
|-
|-
| [[File:Big_direction_forward.png|50px]]
| [[File:Big_direction_forward.png|50px]]
| Not<br/>Available<br/>in Client<br/>App
| [[File:Nav icon continue straight.jpg|50px]]
|}
|}


Line 757: Line 803:
----
----


 
=== Turn right ===
=== Turn Right ===
This may be set manually by a turn instruction override.
 
 
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 779: Line 823:




=== Keep/Stay Right ===
=== Keep/stay right ===
 
This may be set manually by the turn instruction override '''Keep right'''.
 
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 800: Line 843:




=== Exit Right ===
=== Exit right ===
 
This may be set manually by a turn instruction override and is never automatically selected in [[LHT|left hand traffic]] countries.
 
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 813: Line 855:
|}
|}


:::<small>'''NOTE:
:::* In a [[LHT|left hand traffic]] country this instruction does not exist''', and will instead give a [[#Keep/Stay_Right|Keep/Stay_Right]] instruction.
:::* You will only get an Exit instruction on a turn angle less than {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}}, because it is assumed no true exit would have a turn sharper than {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}}.</small>


<br />
<br />
<br />
<br />
<br />
<br />


----
----


 
=== Turn left ===
=== Turn Left ===
This may be set manually by a turn instruction override.
 
 
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 846: Line 883:




=== Keep/Stay Left ===
=== Keep/stay left ===
 
This may be set manually by the turn instruction override '''Keep left'''.
 
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 867: Line 903:




=== Exit Left ===
=== Exit left ===
 
This may be set manually by a turn instruction override and is never automatically selected in [[RHT|right hand traffic]] countries.
 
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
! scope="col" colspan=2 | Displayed Icons
Line 879: Line 914:
| [[File:Nav icon keep left.JPG|50px]]
| [[File:Nav icon keep left.JPG|50px]]
|}
|}
:::<small>'''NOTE:
:::* In a [[RHT|right hand traffic]] country this instruction does not exist''', and will instead give a [[#Keep/Stay_Left|Keep/Stay_Left]] instruction.
:::* You will only get an Exit instruction on a turn angle less than {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}}, because it is assumed no true exit would have a turn sharper than {{:How_Waze_determines_turn_/_keep_/_exit_maneuvers/Stay threshold}}.</small>


<br />
<br />
Line 892: Line 922:
----
----


 
=== At the roundabout take the #xx exit ===
=== At the Roundabout Take the #xx Exit ===




Line 927: Line 956:
----
----


=== At the Roundabout Turn Left ===
=== At the roundabout turn left ===




Line 949: Line 978:




=== At the Roundabout Turn Right ===
=== At the roundabout turn right ===




Line 970: Line 999:
----
----


=== At the Roundabout Continue Straight ===
=== At the roundabout continue straight ===




Line 991: Line 1,020:
----
----


=== At the Roundabout Make a U-Turn ===
=== At the roundabout make a U-turn ===




Line 1,013: Line 1,042:


----
----
=== Make a U-turn ===
This may be manually set by the turn instruction override '''U-turn'''.
{| class="Wikitable" style="text-align:center; border: 1px solid darkgray;" cellpadding="5" border="1"
! scope="col" colspan=2 | Displayed Icons
|-
| Livemap<br>& WME
| Client App
|-
| [[File:Big direction u.png|50px]]
| [[File:Nav icon u turn.png|50px]]
|}
<br />
<br />
<br />
----
<br />
<br />
<br />
<br />
Line 1,074: Line 1,124:
<br />
<br />
<br />
<br />
[[Category:Waze operations]]

Latest revision as of 17:59, 16 September 2021

This is a clickable interactive guide to determine what instruction, if any, will be given at the junction between any 2 segments.

A text version of this information is available here.

Introduction

Understanding how and which instructions are provided requires first understanding a few concepts.

  • This page discusses the instruction which will be provided (or not provided) by the Waze server when traveling from one segment, through a junction, and onto a second segment.
  • How best continuations work. Any time the destination segment is the best continuation no instruction will be provided by default.
  • The lack of an instruction to the best continuation, as well as other default behaviors, can be overridden by the use of turn instruction overrides.

While the illustrations displayed by each question may not represent every possible variation, they do represent the difference between the two options in that question. Please choose the most appropriate answer.

Definitions

  • Origin: The segment you are on before going through the junction, in other words the segment you are coming from will be referred to as the origin, and corresponds to s-in in the the algorithm text provided by Waze staff.
    • In terms of navigation, the segment you are being routed from is the origin.
  • Destination: The segment you will be on after the junction, in other words the segment you are going to will be referred to as the destination, and corresponds to s-out in the the algorithm text provided by Waze staff.
    • In terms of navigation, the segment you are being routed on to is the destination.
  • Branch: Any segments other than the destination which leave the junction at an angle less than 45.04° will be referred to as other branches, and corresponds to s-N, or s-1,2,3,4... in the the algorithm text provided by Waze staff.
  • Overlapping: When the beginning portion two segments are directly on top of each other, meaning they both leave the junction at the exact same angle as each other, they will be referred to as overlapping segments.
  • Highway: Any road typed in Waze as a  Freeway ,  Major Highway , or  Minor Highway , will be referred to in this page as a highway.
  • Turn angle: The turn angle is the angle from the origin to the destination. A perfectly straight road with a junction in the middle would have a turn angle of 0°. The angle then gets wider as you turn to either side. A perfect left or right turn would be 90°. A U-turn at a junction between two segments would represent a 180° turn.
Turn Angles
Standard turn angle 37° angle 90° dogleg
  • No-name segments: A segment with no name (the "none" check-box for street name is checked) is considered to have "no-name" as a name for the Best Continuation algorithm. So two segments with no name, will be considered to have identical names, even if they would inherit different names for TTS.
  • Roundabout angle: The roundabout angle is the angle of any segment connected to the roundabout from the perspective of the origin. The actual turn angle of the segments is irrelevant.
    To explain;
    • Draw an imaginary line straight through the roundabout to the other side of the roundabout from junction node where the origin joins the roundabout. This will represent a 0° roundabout angle, any deviation to the right or left will increase the angle.
    • Draw another imaginary line across the roundabout exactly perpendicular to the first imaginary line. This will represent a 90° roundabout angle to either side.
    • For more info see the roundabouts page
Roundabouts
Normal Non-Normal

All other segments are within the allowed ±15° from either 0° or 90°. Not all other segments are within the allowed ±15° from either 0° or 90°.

Directions

To use this interactive flowchart;

  • Start with the first question in the interactive algorithm.
  • Click on the appropriate answer which best matches your situation. A new question will jump to the top of the screen
  • Continue answering the questions until an instruction is displayed at the top of the screen.
  • This is the instruction that the Waze server should give when transversing this junction between the two segments you described as the origin and the destination.
As of September 2014 This algorithm was changed to also factor in alternate names. This algorithm is still correct when none of the segments have alternate names. If there are alternate names on any of the segments there are a few modifications (in bold).
  • The order of preference for Best Continuation is;
  1. Primary name + Type match
  2. Alt name + Type match
  3. Primary name match, OR Primary name <=> Alt name Cross-match
  4. Alt name match
  5. Type match
  • City names have no affect on matches.

A Cross-match is when the primary name of one segment is identical to the alternate name of an adjacent segment. It had the same priory as a Primary name match.

  • In order for a Cross match to work there must be at least one alt name on both involved segments (even though they don't necessarily match each other).
  • It will work even if the are no Primary names on those segments.
  • It will not work if all three segments at a split have a matching Primary name or a matching Alternate name.

An Alt match is when two adjacent segments have an identical alternate name (regardless of city name).

  • It will not work if all three segments at a split have a matching Primary name.
  • It will work even the OUT segment (the one leaving the split) has no Primary name.
Bring up comments or questions on this page in this forum .
~PesachZ (PM [Help])  

The interactive algorithm

(31)

Is voice prompt set to Waze Selected?


YES


NO: A turn instruction override is set. See the navigation instructions



(32)

Is the origin completely inside a junction box?


YES => Junction box routes with turn instruction overrides suppress further instructions inside the junction box.


NO



(30)

Is the turn angle from the origin to the the destination greater than 170°?


YES => Make a U-turn


NO



(01)

Other than the origin and the destination, are there any other segments connected to this junction?


intersection At Grade Connector At Grade Connector

YES


dead end cul-de-sac dead end continue junction turn junction


NO => No instruction



(19)

Do the origin and the destination meet at a roundabout?


Round about street round about MH mH round about ramps

YES


intersection bowtie

NO



(02)

Is the turn angle from the origin to the destination between 45.14° and 150°?


YES


NO, the turn angle is less 45.04°


NO, the turn angle is greater than 150°
Speculation note: This is unconfirmed Turns with angles greater than 150° will follow the same instruction path as 45.14°-150°, but the Waze routing server will penalize this turn, and avoid routing through it.



(03)

Which direction is the turn?


Left => Turn left


Right => Turn right



(04)

Are there any other branches with unrestricted turns from the origin?


YES


NO => No instruction



(13)

Is there more than one (1) other branch?


YES


NO



(14)

Are the two branches (the destination and the other branch) overlapping?


YES => No instruction


NO



(05)

Is the name of the origin and the destination identical?


YES


NO



(06)

Are the origin and the destination the same road type?


YES


NO



(07)

Are both the name AND the road type of any of the other branches identical to the origin?


YES


NO => No instruction



(08)

Is there any other branch to the left of the destination branch?


YES


NO



(20)

Is this an overlapping segment, is it overlapped by any other branch?


YES


NO



(25)

Are the segments in a right hand traffic country (such as the USA)?


YES


NO => Keep/stay right



(21)

Is the origin a highway? ( Freeway ,  Major Highway , or  Minor Highway )


YES


NO



(22)

Is the destination a highway? ( Freeway ,  Major Highway , or  Minor Highway )


YES => Keep/stay left


NO => Exit left



(23)

Is the origin a  Ramp ?


YES


NO => Keep/stay left



(24)

Is the destination a highway ( Freeway ,  Major Highway , or  Minor Highway ), or a  Ramp ?


YES => Keep/stay left


NO => Exit left



(09)

Is the name of any of the other branches identical to the origin?


YES


NO => No instruction



(10)

Are the origin and the destination the same road type?


YES


NO



(11)

Is the name of any of the other branches identical to the origin?


YES


NO



(12)

Is the road type of any of the other branches identical to the origin?


YES


NO => No instruction



(26)

Are the segments in a left hand traffic country (like the UK)?


YES


NO => Keep/stay left



(15)

Is the origin a highway? ( Freeway ,  Major Highway , or  Minor Highway )


YES


NO



(16)

Is the destination a highway? ( Freeway ,  Major Highway , or  Minor Highway )


YES => Keep/stay right


NO => Exit right



(17)

Is the origin a  Ramp ?

YES


NO => Keep/stay right



(18)

Is the destination a highway ( Freeway ,  Major Highway , or  Minor Highway ), or a  Ramp ?


YES => Keep/stay right


NO => Exit right



(27)

Are there five (5) or more segments (junctions) connected to the roundabout?

more than 4 nodes not normal angles more than 4 nodes

YES => At the roundabout take the #xx exit


4 nodes

NO



(28)

From the perspective of the origin, are the roundabout angles to all the other segments between 0°-15°, or 75°-105°?


YES


NO => At the roundabout take the #xx exit



(29)

What direction is the destination relative to the origin?


Left => At the roundabout turn left


Straight => At the roundabout continue straight


Right => At the roundabout turn right


U Turn, Back => At the roundabout make a U-turn



The navigation instructions

No instruction

There will be no instruction given passing through this junction. This can be caused by the best continuation or certain cases with an overlapping segment. It may also be set using the turn instruction override None.






Continue straight

This must be set manually by the turn instruction override Continue and is never automatically selected.

Displayed Icons
Livemap
& WME
Client App






Turn right

This may be set manually by a turn instruction override.

Displayed Icons
Livemap
& WME
Client App







Keep/stay right

This may be set manually by the turn instruction override Keep right.

Displayed Icons
Livemap
& WME
Client App







Exit right

This may be set manually by a turn instruction override and is never automatically selected in left hand traffic countries.

Displayed Icons
Livemap
& WME
Client App







Turn left

This may be set manually by a turn instruction override.

Displayed Icons
Livemap
& WME
Client App







Keep/stay left

This may be set manually by the turn instruction override Keep left.

Displayed Icons
Livemap
& WME
Client App







Exit left

This may be set manually by a turn instruction override and is never automatically selected in right hand traffic countries.

Displayed Icons
Livemap
& WME
Client App






At the roundabout take the #xx exit

The "#xx" will be 1st, 2nd, 3rd, etc.. The counting starts from the origin.


Displayed Icons
Livemap
& WME
Client App

NOTE: In the client app there will be a digit inside the circle representing which number exit you must take (starting from the origin).

If the roundabout is not formed correctly (more than one entering/exiting segment connected to same roundabout node), you may get an instruction "at the roundabout, exit number 0" with a partial verbal instruction.







At the roundabout turn left

Displayed Icons
Livemap
& WME
Client App








At the roundabout turn right

Displayed Icons
Livemap
& WME
Client App







At the roundabout continue straight

Displayed Icons
Livemap
& WME
Client App







At the roundabout make a U-turn

Displayed Icons
Livemap
& WME
Client App

NOTE: Currently this is only displayed in the client, but there is no verbal instruction (due to a bug).







Make a U-turn

This may be manually set by the turn instruction override U-turn.

Displayed Icons
Livemap
& WME
Client App
























this space intentionally left blank