Road Network Diagnostic Tool

Building road network with routing (voice navigation) functionality is a complex task and it is easy to introduce errors that cause route calculation errors in GPS. This software tool allows to scan road network in the currently open map and to identify the most common errors in the network.

Click Scan Network button to get information about the network. Program scans object of 'routable road' type and analyzes their mutual connections (intersection nodes). GPS uses table of intersection nodes to navigate from one place to another via respective roads. For routing functionality it is crucial that there is no error in intersection nodes. If network analyze founds any error, it is displayed in the log window. 

Current version is capable to discover following errors:

A) Unused intersection nodes - intersection node on any road must be connected to intersection node on some other road - this links one road to another. Unused intersection node is not connected to other road. There are 3 most common causes of unused node: 

1. Small misplacement of nodes. Zoom in sufficiently to see the gap and snap node to the other road's node, to link roads together. Use 'snap to node' option in editing mode to ensure perfect alignment of nodes. 

Misplaced nodes

Nodes are misplaced and are identified as unused, therefore. Snap one node to the other.

2. Node on other road is not marked as 'intersection' - edit second road and assign respective node with 'intersection' attribute.

3. Node is marked as intersection by mistake, after erasure of neighboring roads, for example. To clear all such nodes at once, use the main menu > Network > Clear Unused Intersections command.

B) Unconnected roads - such road has no intersection node and is not connected to network, therefore. Add some intersection nodes or convert this object to common polylines (i.e. not routable) 

C) Roads with loop - road may not connect to itself, which means that it may not form a loop. In such a case, split road to multiple pieces. This error message occurs, for example, if roundabout is made with just 1 road. Another cause is duplicate part of road. For example, if road of shape of letter E is drawn as a single polyline from top to bottom, the middle bar is duplicate. Split and/or edit such road so that each piece is unique and without loops and duplicate parts. Main menu > Network > Split self-intersecting Roads command splits all roads with loop at once. 

Road with loop

Loop on the left side is not a problem, because there is no intersection node on place where road crosses itself. Such road can be a ramp to the highway, for example.
Loop on the right-side is a problem because of intersection node. Road cannot connect to itself. Split such road in two pieces.

Duplicate road segment

Road draw as a single object. The middle part is duplicate, which causes error in routing.
Make such object with 2 pieces, so that each element is unique.

D) Duplicate Nodes - two or more intersection nodes on a road are identical or they are too close one to the other. During conversion to GPS native format the node coordinates are trimmed to best possible accuracy, which is about 2.4 m at equator. If intersection nodes on the same road are closer than this threshold, they become identical when their coordinates are trimmed. Therefore, diagnostic tool may mark intersection nodes that are 1 or 2 meters distant as 'duplicate'. Intersection nodes should not be so close one to another. Delete redundant intersection nodes or clear their 'intersection' attribute with use of node editing mode.

Duplicate nodes  Duplicate nodes - intersection attribute cleared, node preserved   Duplicate nodes - redundant node deleted

Left: wrong - duplicate nodes - intersection nodes on the same road are very close one to another (less than 1 meter).
Center: good - intersection attribute of redundant node cleared, node preserved.
Right: good - reduntand node deleted. Please note slight change in the road shape.

E) Roads with zero length - erroneous road objects with no length, starting and ending in the same point. Use main menu > Select > Roads with zero length and delete these objects.

The tool also reports number of separate networks found in the map, if there are more than one network. This warning means that groups of roads form isolated networks that are not connected one to another, at least not within the current map (connection may exist via border nodes and neighboring maps). Multiple networks is not necessarily an error. Although most maps are supposed to contain just one road network, it is not a rule. User should decide if map should contain only one network and some connection is missing, or if there are multiple isolated networks.

Single network (left) and separate networks without connection (right)

Left side - one network, navigation possible between all parts of network.
Right side - two separate networks within single map. A road or just intersection may be missing.

The tool displays list of found errors. The list is truncated if it is too long (more than 500 items). You should eliminate displayed problems before getting to the next. Clicking each list item finds respective item (road) on the map and highlights it. If problem is unused or duplicate node, the node is displayed as circle with number label in center. This number indicates how many roads connect in this node. In case of unused node it is 1. Use right mouse click and pop-up menu > Edit to switch into editing mode to fix the problem. When in editing mode, the Diagnostic Tool window is hidden. To update list of errors, click the Scan Network button again.

Above approach allows to find and fix problems one-by-one. There are errors, however, that can be fixed all at once if it is appropriate for respective map. Use main menu in the tool window > Select > Unused roads or Roads with zero length. Selected objects can be now converted to common polylines (unused roads) or deleted (roads with zero length) all at once. Re-scan network to update the error list.

This diagnostic tool does not identify all kind of possible problems. For example, it does not identify duplicate roads. Please use Mapwel main menu > Objects > Delete Duplicate (Identical) Objects to eliminate this kind of problem.

Also, current version of tool does not verify border nodes and connection to other maps.