# Changes

## Routing penalties/Controlling U-turn penalties

, 6 months ago
Fixed JB rank error (was 5, now using Rank template) in "Allowing median U-turns" section
=== {{@|Median U-turn penalty}} ===
{{anchor|Avoiding U turns|Avoiding U turns in box and partial box intersections}}
The Waze routing algorithm assesses a [[Routing penalties#Road_configurations|penalty]] for a double-left or double-right turn, which can be used to prevent U-turns at H-style intersections on divided and parallel roads.
==== {{@|Preventing median U-turns}} ====
A An extremely large U-turn penalty is applied set for a double-left or double-right turn when '''''all three''''' of the conditions below are met:
# '''Three segments''': The U-turn involves is a reversal of driving direction through 3 three segments: <br>an incoming segment&nbsp;(A), a single median segment, &nbsp;(B) and an outgoing segment&nbsp;(C).# '''Short median''': The length of the median segment &nbsp;(B) is shorter than 15 m (49equal to {{:Routing_penalties/U-turn_minimum|less}} or less.21 feet)# '''In/out parallelism''': The incoming in and outgoing out segments (A&nbsp;and&nbsp;C) are [[#Checking for parallel incoming and outgoing segments|within ±5° of parallel]] to each other.
<br>
{{Mbox|type=important|text=It is possible for this method to fail to prevent a U-turn when it is the first segment of a route , or it immediately follows a reroute. If you observe this method to fail in other situations when it is implemented properly, please report it in [http://www.waze.com/forum/viewtopic.php?p=994385#p994385 this forum thread]}}
<br>
==== {{@|Allowing median U-turns}} ====
{{construction
| contact = https://www.waze.com/forum/viewtopic.php?f=1636&t=241061
| contacttype = forum
| draft = no
| open = no
| revision = yes
| section = yes
| talk = no
}}
To allow median U-turns in both directions, break condition #2 by making the median segment&nbsp;(B) {{:Routing_penalties/U-turn_minimum|greater}} ''or longer''
To allow a double-left or doubleU-right turn through a median segmentfrom only one direction, break any one of first setup the intersection to allow U-turns in both directions. Then, add a [[#Preventing median Junction Box]], and restrict the prohibited U-turnsturn route. A rank {{Rank|jb}} user or above criteria]]is required to install a Junction Box. For example: * To allow median {{mbox|text=Previously, unidirectional U-turns in both directions, break turn prohibition on a divided road was set up by breaking condition #2 by making 3 of the U-turn prevention mechanism through the median segment longer than 15 m (49use of a [[Glossary#mDL|micro-dogleg]]. {{As of|2017}}, Waze staff has expressed a preference that map editors use Junction Boxes in these situations.21 ft)}}<!-- OLD INFORMATION * To selectively allow a U-turn from only one direction, first setup set up U-turn prevention as you would for both directions. For Break condition #3 on the side where U-turns are allowed, make . Increase or decrease the angles so that the incoming in and outgoing out segments sufficiently (A and C) are [[#Checking for parallel incoming and outgoing segments|non-not parallel]]. (Tip: consider using a A [[Glossary#mDL|Micromicro-dogleg]] can be used to discreetly tweak change the angle without affecting changing the appearance)of the segment.[[File:U-turn selective Uturn prevention.png|center]]-->
<br>
==== {{@|Checking for parallel incoming and outgoing segments}} ====
Condition #3 for U-turn prevention requires that the incoming in and outgoing out segments to be (A&nbsp;and&nbsp;C) are within ±5º of parallel to each other. These two segments are considered parallel if their angles with respect to This is checked by using a ''straight'' median segment sum as the reference and the [[Scripts#WME_Junction_Angle_info|Junction Angle Info]] (JAI) browser extension to 180±5º (imeasure angles. JAI may be set for absolute or [[Interactive_junction_instruction_algorithm#Turn_angle|turn angles]]; using either is OK.e ===== {{@|Straight median segments}} =====If the median segment is straight, sum the two angles making up the U-turn::# The angle between the incoming and median segments (between A and B):# The angle between the median and outgoing segments (between B and C)The in and out segments (A&nbsp;and&nbsp;C) are considered parallel if the sum is {{font color|red|between 175º and 185º)}}. <br>{| style="border: 0px; text-align: center; line-height: 1; font-size: small;"|-| [[File:U-turn_Parallel_Check_Straight.png|680px]]|- | style="padding-bottom: 20px;" | The short 14m median segment in the above examples satisfies condition #2 for U-turn prevention. |}
Angles can ===== {{@|Curved median segments}} =====If the median segment&nbsp;(B) has been shaped with geometry nodes, it is not straight and cannot be easily checked used for determining parallelism. Instead, draw a straight segment connected at the same in and out junctions (where in-segment&nbsp;(A) junctions with the [[Scripts#WME_Junction_Angle_info|Junction Angle Info]] script addmedian segment&nbsp;(B) and where the median segment&nbsp;(B) junctions with the out-on, which can be set to report absolute angles or [[How_Waze_determines_turn_/_keep_/_exit_maneuvers|turn angles]] segment&nbsp;("departure"C)). For Check the purpose of determining parallelismangles using this new straight segment, summing either measurements will workand delete the new segment afterwards.
<br>
[[File:U-turn_Parallel_Check_Straightturn_Parallel_Check_Curved.png||center680px]]<br>{{mbox|type=protection|text=Be sure the [[Editing_permissions#Locked_junction|junctions are not locked]] above your rank. Otherwise, drawing a new temporary segment connected to locked junctions may produce a save error even if it is deleted prior to saving.{{Expand|# Disable the [[Map_Editor_Interface_and_Controls#Settings_Tab|WME setting]] "Draw new roads with all turns allowed" before drawing the new segment.# Draw the new segment disconnected from any other segment, then drag the end nodes to connect to the junctions.|workaround options when any segments connected to either junction node cannot be edited.|nt=yes}}}}