From Wazeopedia

Junction Style Guide

1,281 bytes added, 4 months ago
fixed forum link :/ double posted to forum and had deleted link
{{NeedImage}}<!--Editorial Reminders--><!--To Do - U-Turn Solutions for "Road not connected" error -->{{construction| contact = Simple is better 1636&t=283510| contacttype =forum| draft = no| open = no| revision = yes| talk = yes}}
When representing The following article contains key information on properly creating junctions (a.k.a. intersections, cross roads, corners, etc.) between roads, we sometimes have to blur and the lines roadways between the physical and logical worldsthem. The primary goal should be Be sure to represent things as simply as possible and only introduce complexity to deal with an issuereview it in its entirety before editing the map.
== The Basics &larr; START HERE Simple is better ==
Lets start with the very basic case of one road branching off from anotherWhen representing junctions, intersections, interchanges, cross roads, corners, etc. Most of , the time they will probably meet at close Waze map does not need to a 90 degree angleperfectly match the road layouts it represents. This The primary goal is to represent the simplest situation to deal with since real world as simply as possible in the physical maps and logical views of only introduce complexity in the roads match up very wellmaps to address complex issues.
: == The basics ==This guide requires a complete understanding of editing the maps with [[Image:Jct_3_90.pngWaze Map Editor]](WME).
But you will probably find roads that meet at odd angles as well. Even in urban areas with rigid grids, you will often find at least one road that has existed since prior === Map editing 101 ===Although it is highly recommended to read the establishment of [[editing manual]] before touching the grid which cuts through town at strange angles. The initial urge will be to represent the junction as map, it is in required that you do not continue with this guide until you have read the physical world following:* [[Map Editing Quick-start Guide|Map Editing Quick- two lines running into each other at some angle.start Guide]]* [[Creating and editing road segments#Junctions|Moving and removing junctions]]
=== Junction definition ==={| class="Wikitable floatright"| [[Image:Junction_selected.png|50px|border]]| [[Image: Uneditable_junction.png|50px|border]]| [[Image:Jct_3_45junction_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.
But there are issues with this method. Depending on the angles, the client may give a "Keep Right" instruction to the driver when a "Turn Right" instruction A junction is made up of three things:# Two or more appropriate. In some cases, it is even possible the angle may be such that no instruction is given at road [[Creating and editing road segments|segments]]# One point where all. Or worse yet, the routing engine may determine that it isn't possible to make a very sharp angle and not suggest a turn segments meet (in the example image, headed south and then turning left to head east[[junction point]] itself)# [[Map Editing Quick-start Guide#Turn restrictions .28allowed turns.29|Turns allowed or restricted]] when traveling from one segment to another through that junction point{{clear}}
To eliminate ambiguity, we need to treat the junction from a logical point of view. Since we want to be given basic == Controlling Turn Instructions =={| class="Wikitable floatright" cellpadding="5" border="1"Turn Leftstyle=" and text-align:center; border: 1px solid darkgray;"|-| Keep Right || Keep Left|-| Turn Right || Turn Left|-| Exit Right" || Exit Left|}Turn instructions, we have to treat it like it was a basic 90 degree intersectionare critical for proper client navigation. But how do we do that when the roads don't actually diverge They are controlled by:* The angle set between segments at 90 degrees? What we need to do is to add some geometry nodes to make the branch junctions.* The road leave the main names.* The road at close to 90 degrees, then we gradually curve to match the true departure angletypes.
: Review the article [[Image:Jct_3_45_curve.pngJunction Style Guide/Controlling turn instructions|controlling turn instructions]]for a complete understanding of the requirements and issues surrounding this topic.
Now we have a junction that logically works like a basic 90 degree junction but it also fits the reality of the physical world.== Surface Streets ==
A === Intersections ==={| class="Wikitable floatright"| [[File:Jct 3 90.png|x100px|border]]| [[File:Jct 4 90.png|x100px|border]]| [[File:Jct ramp to a highway is another good example where additional geometry nodes are helpfulno geo.png|x100px|border]]|-| colspan="3"|[[File:4waysplitsplit. Especially since most ramps diverge png|border|center|169x169px]]|}Basic intersections involve three or four road segments meeting at a very small angle from the roadsingle point. Some more complex variations resemble H or # shapes.
: In all cases it is important to configure these intersections properly. Detailed information is covered in the [[Image:Jct_ramp_no_geo.pngJunction Style Guide/Intersections|Intersections]]article.{{clear}}
The drawback in this case (which also exists for the side road example above!) is that it may be very hard to see and click on the turn restriction arrows in the editor.
: [[Image:Jct_ramp_no_geo_arrow.png]]=== No Outlet Roads ===
But if we just add Roads which only have one more geometry node way in and one way out can present challenges to make the departure angle at the junction itself closer routing server, although they seem simple to 20 or 30 degrees..our minds.
: [[Image:Jct_ramp_w_geo.png]]==== Dead Ends ====
Dead Ends ( the arrows No Exit, Closed, No Through Road, No Outlet) are visible and accessible. Note road segments that you can also press 's' in the editor to '''s'''pread simply end, with no continuation or '''s'''eparate the arrows connections at one end. In some areas, a Dead End may be synonymous with a junction if you still have difficulty clicking on an arrow. (see [[Keyboard_shortcut#Cul-de-sacs|Editor Keyboard ShortcutsCul-de-sac]] for more tips.)In the US, a "No Outlet" sign may be used to indicate a road which itself is not a dead end, but it only connects to other dead end roads. It can also be used as a "friendlier" alternative to the typical Dead End sign.
: [[Image:Jct_ramp_w_geo_arrowWithin the Map Editor it is possible to represent a dead end road with multiple segments if there are private driveways or parking lot roads mapped and connected. In that case, only the very last segment is considered the dead end segment.png]]
We can easily scale [[File:Jct dead end.png|left|border]]Make sure that there is a junction indicator (the small blue dot, not just a geometry node) at the very end of the above approaches to segment. While this one segment does not actually constitute a four-way junction, the small blue dot is a visual indicator to the editor that the end of this segment is properly set up. Again we can expect This is necessary to mostly see angles close ensure proper routing out of the segment. See the Cul-de-sac section below on when and how to 90 degreesfix this.
: [[ImageFile:Jct_4_90Jct dead end ex.png‎ png|right|border|200px]]This final junction indicator must be located near the end of the road, but it should be located where there is still pavement as not to negatively impact client routes. Waze only considers the road fully traversed if both ends of the segment are fully crossed. If the junction indicator at the end of the segment happens to be at the edge of the pavement (or off of the road surface if aerials are not exactly aligned), it will be very difficult for a driver to cross that junction. A good rule of thumb is to have the end of the segment the same distance from the end of the pavement as it is from each side of the road.
And if we have that odd street cutting across town at an odd angleWith such a placement, we again want the driver is given a chance to avoid cross that junction indicator for that segment. Also check for the odd angle proper u-turn setting as covered in the [[Map Editing Quick-start Guide#U-Turns at the junction..end of dead-end-streets|best practices article on u-turns]].
: [[Image:Jct_4_45.png]]==== Cul-de-sacs ====
''See also: [http://en.wikipedia..and we want to use geometry nodes to bring the actual junction to 90 degrees. You can zoom in as close as you can and add a single geometry node org/wiki/Cul-de-sac Cul-de-sac article on each side. This will give us the proper angle but make it virtually invisible to users so it looks just like the physical world.Wikipedia]''
: [[Image:Jct_4_45_curveA Cul-de-sac (a.k.a. Court in the US) is a common treatment of a dead end street in a residential neighborhood.png]]
The above image is what you would see zoomed In almost every situation, a cul-de-sac should be treated exactly as a dead end street, with the final junction indicator in as close as possiblethe 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). Zoomed back outIf there is no blue dot, please correct it looks just like by following the image showing steps for [[Creating and editing road segments#Fix the junction without any geometry nodesend-node on cul-de-sacs and dead-ends|fixing dead ends]].
And here [[Image:Jct_cul-de-sac_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 real world example at 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 the end of the road segment. With the junction in the middle of the visual road, we give a driver a zoom level good chance to cross the end of the segment no matter where you can still see they drive within the bulb. The exception to this guidance is given in the geometry adjustment we added:next example.{{clear}}
{| class="Wikitable floatright"| [[Image: Jct_cul-de-sac_island_ex.png|200px|border]]| [[Image:Jct_4_45_exJct_cul-de-sac_island_ex_road.png|border|200px]]|}This cul-de-sac, 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.
== Controlling Turn Instructions ==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}}
Before going furtherHowever, make sure you understand if the cul-de-sac has a very large bulb with a large island in the mechanics of middle, it may better be treated as a [[Map_Editing_Quick-start_Guide#Turn_restrictions_.28allowed_turns.29Loops|turn restrictionsLoop]] in . A good rule of thumb is if you were standing at the end of the Map Editor. cul-de-sac, can you tell that it is just a cul-de-sac? Or does it look like two different roads? If turns you see an island, but are not properly enabled and restrictedsure if it is significant, you will never get leave the Loop out. If "Missing Road" errors occur on the instructions you desireroad, then add a Loop.
In the Basics section above, we touched on how to ensure a === Loops ===<gallery mode="packed-hover"Turn left>File:U-shaped Road.jpg|U-shaped roadFile:Jct loop bulb.png|terminal or dead-end loop</right" instruction would be given over gallery>Road segments form a loop when you can trace a path from a "Keep left/right" instructionstarting point around to the same point without retracing any portion of the traced path.
Details ==== Every loop must be made up of the mechanics behind three or more segments ====[[File:Loop_3-part_6.jpg|right|150px]]Any loop that does not follow this rule can be found on cause problems for the Waze routing server. If there is no side-street, you must [[How_Waze_determines_turn_/_keep_/_exit_maneuversMap Editing Quick-start Guide#Splitting a segment|How Waze determines turn / keep / exit maneuversinsert an extra junction node]] pagealong the loop. Many new editors will see the extra junction node(s), but here is a quick summaryassume they are not needed, and delete them. Please educate new editors.=== Geometry ===
Some ====Two-segment loops====Two-segment loops create a situation called "same endpoint drivable segments" or "same connection segments". There are two or more ways to get from one junction node to another without going through any other nodes. They can cause a problem for the Waze app regardless of the complexity direction, or other attributes of the back-end algorithms can be avoided if we try to treat junctions with segments. This is because the logical view in mind as was done in routing server gives your mobile app a list of node IDs only, but the previous examplesapp needs to tell you which segments to drive on. If all junctions you edit follow there are two ways to get from one node to the next without going through any other nodes, then the Waze app might just have to guess. It might guess a few basic forms, it will be much easier to predict detour off the behavior of an individual junctionhighway through a service road or scenic overlook. Please save Waze from this silliness. Correct two-segment loops.
* Approximately '''90''' degree departure angle = '''Turn'''===One-segment loops====* Between '''20 and 30''' degree departure angle = '''Keep''' ({{anchor|Loop_save_errors}}[[File:Dead end loop.png|thumb|right]] One-segment or Exit self-connected loops are often found in basemap areas. It is difficult for Ramps)Waze editors to create one-segment loops. Depending on the situation, these should be converted to three-segment loops or simple dead-end roads. For more on loops on dead-end roads, please see [[Cul-de-sac#Cul-de-sacs|cul-de-sac]]. It is important to preserve house number data on these segments.===== Fixing one-segment loops=====If you try to edit a one-segment loop, but then cannot save the changes, undo your changes and then try one of the following to fix it:
This knowledge allows us *If the loop and the road leading to control how a junction behaves by modifying a single geometry node in most casesit have the '''same''' name*#Select the loop and the road. This *#Click the bridge icon that appears (one end of the loop will disconnect from the other)*#Move the now free end of the loop so it is often useful for [[At-Grade_Connectors|At-Grade Connectors]] where sometimes we prefer slightly separated*#Save*If the loop and the road leading to it have '''different''' names*#Draw a "Keep rightnew road segment that connects to the loop/left" road junction*#Give that new road the same exact name as the loop*#Select the loop and the new road segment*#Click the bridge icon that appears (one end of the loop will disconnect from the other times )*#Move the now free end of the loop so it is slightly separated*#Save*Create a "Turn right/left" would be more dead end road or a three-segment dead-end loop as appropriate.*Fix elevations.*Confirm turns.
If we keep the departure angle in the 20 to 30 degree range, we would get Here is a "Keep Right" to follow [ video on YouTube showing the curved one-way connectorsecond method].{{#widget:YouTube|id=a7yAzG7HElw}}
: [[Image:Jct_at_grade_keepJct_roundabout.png|frameless|right]]
But if we move one geometry node ===Roundabouts and traffic circles===It may be tempting to use the roundabout feature to create a 90 degree angleloop shape. Do not do this unless the loop is a roundabout or traffic circle. Roundabouts give special routing instructions, and must not be used for other purposes. To learn more, now we would receive a "Turn Right" instructionplease see the [[Roundabout]] page.
: [[Image:Jct_at_grade_turn.png]] === Segment Naming and Type === Besides the geometry of the road segments, the names and types of the segments come into play. A basic rule of thumb is that if you want a turn to be announced, having a different name will improve the chances that will happen. For the At-Grade Connector example above, the connector should have a different name than the road it is leaving (See the [[At-Grade_Connectors#How_to_name_the_connector|How to name the connector]] section of the At-Grade Connectors page). == Roundabouts and Traffic Circles =grade connectors : [[Image:Jct_roundabout.png]] Please see the [[Roundabout]] page for a full discussion of this special type of junction. == At-Grade Connectors ==
: [[Image:Jct_at_grade_keep.png]]
Make sure you With exceptions, don't confuse set these segments for as ramps! And watch Watch out for all of the turns you need to restrict. For a full more detailed discussion, see the full [[At-Grade_Connectors|At-Grade Connectors]] page. == Limited Access Interchanges ==''See also: [ Wikipedia article on Road Interchanges]'' When two roads meet in a limited access interchange (any situation where travel between grade separated roads is facilitated by ramps or slip roads alone), extra care must be taken. If an exit ramp lines up with an entrance ramp, care must be taken to restrict the straight through direction to prevent "ramp-to-ramp routing" where the routing engine may try to take a shortcut from the Freeway, to the exit ramp, to the entrance ramp, and back to the Freeway instead of staying on the Freeway. That motion is inefficient and may be illegal in certain jurisdictions. '''Care must be taken to not enable all turns in any situation where ramps meet unless all possible flows of traffic have been considered!''' We also have to pay attention to the '''Level''' of the road segments since there will typically be many bridges and overpasses for any limited access interchange. If two roads cross without connecting, their levels must be different. The following sections discuss some of the common Interchange designs. Note that some Interchanges may be a hybrid of these basic designs where one side or quadrant of the interchange may differ from the others. === Diamond Interchange ===: [[Image:Jct_diamond.pngconnectors]]''See also: [ Diamond Interchange article on Wikipedia]'' Common in wide open spaces where land acquisition and geography are not concerns, this Interchange design has ramps equally distributed across all 4 quadrants. In the simplest form, this can be represented as single connections from the ramps to the surface street. Just be sure to restrict the straight through motion from the exit ramp onto the entrance ramp: [[Image:Jct_diamond_simple_turns.png]] If the ramps connect to the surface street at multiple points, we have to avoid ramp-to-ramp routing as well as illegal turns which should use another ramp. First we see the turns that must be restricted for the exit ramps: : [[Image:Jct_diamond_cplx_turns_off_L.png]] [[Image:Jct_diamond_cplx_turns_off_R.png]] Then we see what must be restricted for the entrance ramps:
: [[Image:Jct_diamond_cplx_turns_on.png]]== Interchanges and ramps ==
An '''Note on Levels:interchange''' is a road junction where two roads are connected by dedicated roadways, called '''ramps'''. The single surface street segment between the inner most ramps should be either raised or lowered in relation to roads connected by an interchange do not intersect one another directly, and if they cross, the freeway segments depending on the actual geography at the interchangecrossing is grade-separated.
=== Cloverleaf Interchange When to use ramps ===: [[Image:Jct_cloverleaf.png]]
''See alsoUse of the {{Ramp}} type is governed by the following rules: * [ Cloverleaf Interchange article on Wikipedia[Road types]]* [[At-grade connectors]]''
In a Cloverleaf Interchange, left turns are eliminated from all movements between the Freeway === Ramp and the surface street. First check the exit ramps.interchange style ===
: For guidance on the proper configuration of ramps, interchanges and wayfinders, see [[Image:Jct_cloverleaf_off_outer_turns.pngJunction Style Guide/Interchange]] [[Image:Jct_cloverleaf_off_inner_turns.png]]
Then check the entrance ramps for illegal turns== 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.
Valid examples of where to use a Transition node include: # Road name changes# City Limits# Road Direction changes# Part of a [[Image:Jct_cloverleaf_on_turns.png#Loops|Loop Road]]# Speed Limit Change
The connections Before the current house numbering system came into use, transition nodes were used to the Freeway segments may be treated aid in two ways:house numbering, but that is no longer required.
:[[Image:Jct_cloverleaf_optionsThere may be existing transition nodes on the map for other reasons like remaining after a connecting road is deleted, inherited from the original base map import when rivers and streams created junctions, etc.png]]
As long as you are '''certain''' it is not a valid transition node, a superfluous junction node may be [[Map Editing Quick-start Guide# (top) we can have the inner entrance and exit ramps have their own junction nodes with the FreewayDelete a Junction|deleted]].# (bottom) we can have Doing so will simplify the entrance map, eliminate turn restrictions to maintain, and exit ramps share a single junction node with the Freewayreduce computing resource needs. This allows us to eliminate the very short Freeway segment that may exist between Also consider removing the inner entrance [[Creating and exit rampsediting road segments#Adjusting road geometry .<br />It is best to offset this shared junction onto the Entrance ramp side of the surface street28nodes. This prevents 29|geometry node]] which will replace the junction from accidentally being connected to the surface street or looking like it does. We favor the Entrance ramp sidenode you delete, because this would result in a slightly earlier exit instruction which if that geometry node is of course preferred over a late exit instructionnot needed.
The determining factor of which design === Roads to use will partly depend on the actual size and scale of the specific interchangeNowhere ===In certain situations it may be necessary to add road segments that are un-drivable in order to provide accurate navigation instructions.
'''Note on Levels:'''==== Actual ====The single surface street segment between A valid use of this technique is at the inner most ramps should be either raised or lowered temporary end of a freeway. As a freeway is built, it is often opened in relation sections, up to the a certain exit. If we map this as a regular freeway segments depending on the actual geography at segment leading to a ramp segment, no announcement will be made for that final exit, no matter what we name the interchangeexit ramp.
=== Folded Diamond ===: [[Image:Jct_folded_diamond.png]]''See also: Discussion of Folded Diamonds This can be confusing if the ramp is set up as a properly signed and A2/B2 Partial Cloverleafs numbered exit, especially if a driver is traveling a long distance on the [http://enthis freeway.wikipediaImagine traveling down a freeway and seeing your next instruction is "turn left at Main Partial Cloverleaf Interchange article on Wikipedia]'" You would probably wonder if there was a map error since you shouldn't be making a left turn off of a freeway.
Geography or property ownership may prevent the ability for an interchange to be constructed with all ramps evenly distributed across If we map even just a little of the 4 quadrants future path of the interchange. When only two quadrants are usedfreeway, it is typically called this gives the routing engine a Folded Diamond (basically a sub-type junction which will generate an "exit" instruction at the end of a Partial Cloverleaf Interchange). The ramps may be all on one side (as in the examples in this section) or they may be located in diagonally opposed quadrantsfreeway, thus eliminating any confusion.
The unique situation presented by Conversely, if we do NOT want an exit instruction at the Folded Diamond arrangement end of a freeway, ensure there are no road segments extending past the final exit, to ensure the final exit is having both Entrance and Exit ramps terminating on the same side only path out of the surface street. Ideally both ramps should terminate on the same junction node to permit us to easily restrict the illegal and usually impossible ramp-to-ramp movementfinal freeway segment.
: [[Image:Jct_folded_diamond_u-turn.png]]'
Like with a basic Diamond Interchange, often it will be necessary to represent the ramps making multiple connections to the surface street. Restrict all non-permitted turns.
: [[Image:Jct_folded_diamond_off_turns_L.png]] [[Image:Jct_folded_diamond_off_turns_R.png]] [[Image:Jct_folded_diamond_on_turns.png]]
'''Note on Levels:''' Similar to a basic Diamond interchange, in most cases only the segment of the surface street that crosses the Freeway segments will need to be adjusted up or down.
=== Single Point Urban Interchange (SPUI) ===
: [[Image:Jct_SPUI.png]]
''See also: [ Single Point Urban Interchange article on Wikipedia]''
A SPUI is a very space and flow efficient design, but it takes extra attention to ensure the turns are correct. And as the name indicates, ideally there should be a single junction in the center. You may need to tweak the geometry of segments a bit off of alignment from the real physical world, but it should be minor if the interchange is a true SPUI.
The outer branches of the exit ramps are very much like in the case of a diamond interchange:
: [[Image:Jct_SPUI_off_outer_turn.png]]
Where things get complicated is the inner branches leading to the Single Point. You need to avoid ramp-to-ramp in two directions and a reverse flow turn. '''Note:''' The ramp-to-ramp motion to facilitate a U-Turn (the top left arrow in the image below) may or may not be allowed depending on the specific interchange. Please validate this turn.
: [[Image:Jct_SPUI_off_inner_turn.png]]
Luckily the entrance ramp restrictions are similar to the diamond interchange:
: [[Image:Jct_SPUI_on_turn.png]]
If you were to look at all the restricted turns at once, you may get the false impression that something is very wrong. But as you now know, a SPUI has almost as many restricted turns as allowed ones.
: [[Image:Jct_SPUI_all_turns.png]]
'''Note on Levels:'''
The two surface street segments (between the outer ramps and connected to the Single Point) and the 4 ramp segments connected to the single point should all be the same level, either one higher or one lower than the level of the freeway segments above/below the single point.
== Oddities ==
=== Offset Roads ===
[[Image:Jct_4_offset.png|left|x150px|border]]Sometimes you will find two roads which cross , where one does not quite line up exactly from one side to with the other.
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_offsetJct_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}}
There are [[Image:Jct_4_offset_sep_ex.png|left|x150px|border]]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 few things we need driver skipped right over a short segment. This will result in [[Map Problems in Waze Map Editor|automated map errors]] and possible route recalculations in the client,) it may be wise to look at shift the side roads as far apart from each other as possible with them still in this situationthe 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.
# Do the roads actually line up in reality? If so we need to modify the junction to be a basic 4-way junction.[[Category:Style Guide]]# 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 only done while zoomed in very close.<br/>[[ImageCategory:Jct_4_offset_align.pngTable examples]]<br/># 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. Since we want to avoid very short segments of road, 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.