Objectives: | Understanding topology in vector data | |
Keywords: | Vector, topology, topology rules, topology errors, search radius, snapping distance, simple feature |
Topology expresses the spatial relationships between connecting or adjacent vector features (points, polylines and polygons) in a GIS. Topological or topology-based data are useful for detecting and correcting digitising errors (e.g. two lines in a roads vector layer that do not meet perfectly at an intersection). Topology is necessary for carrying out some types of spatial analysis, such as network analysis.
Imagine you travel to London. On a sightseeing tour you plan to visit St. Paul’s Cathedral first and in the afternoon Covent Garden Market for some souvenirs. Looking at the Underground map of London (see figure_topology_london) you have to find connecting trains to get from Covent Garden to St. Paul’s. This requires topological information (data) about where it is possible to change trains. Looking at a map of the underground, the topological relationships are illustrated by circles that show connectivity.
There are different types of topological errors and they can be grouped according to whether the vector feature types are polygons or polylines. Topological errors with polygon features can include unclosed polygons, gaps between polygon borders or overlapping polygon borders. A common topological error with polyline features is that they do not meet perfectly at a point (node). This type of error is called an undershoot if a gap exists between the lines, and an overshoot if a line ends beyond the line it should connect to (see figure_topology_errors).
The result of overshoot and undershoot errors are so-called ‘dangling nodes’ at the end of the lines. Dangling nodes are acceptable in special cases, for example if they are attached to dead-end streets.
Topological errors break the relationship between features. These errors need to be fixed in order to be able to analyse vector data with procedures like network analysis (e.g. finding the best route across a road network) or measurement (e.g. finding out the length of a river). In addition to topology being useful for network analysis and measurement, there are other reasons why it is important and useful to create or have vector data with correct topology. Just imagine you digitise a municipal boundaries map for your province and the polygons overlap or show slivers. If such errors were present, you would be able to use the measurement tools, but the results you get will be incorrect. You will not know the correct area for any municipality and you will not be able to define exactly, where the borders between the municipalities are.
It is not only important for your own analysis to create and have topologically correct data, but also for people who you pass data on to. They will be expecting your data and analysis results to be correct!
Fortunately, many common errors that can occur when digitising vector features can be prevented by topology rules that are implemented in many GIS applications.
Except for some special GIS data formats, topology is usually not enforced by default. Many common GIS, like QGIS, define topology as relationship rules and let the user choose the rules, if any, to be implemented in a vector layer.
The following list shows some examples of where topology rules can be defined for real world features in a vector map:
Many GIS applications provide tools for topological editing. For example in QGIS you can enable topological editing to improve editing and maintaining common boundaries in polygon layers. A GIS such as QGIS ‘detects’ a shared boundary in a polygon map so you only have to move the edge vertex of one polygon boundary and QGIS will ensure the updating of the other polygon boundaries as shown in figure_topological_tools (1).
Another topological option allows you to prevent** polygon overlaps** during digitising (see figure_topological_tools (2)). If you already have one polygon, it is possible with this option to digitise a second adjacent polygon so that both polygons overlap and QGIS then clips the second polygon to the common boundary.
Snapping distance is the distance a GIS uses to search for the closest vertex and / or segment you are trying to connect when you digitise. A segment is a straight line formed between two vertices in a polygon or polyline geometry. If you aren’t within the snapping distance, a GIS such as QGIS will leave the vertex where you release the mouse button, instead of snapping it to an existing vertex and / or segment (see figure_snapping_distance).
Search radius is the distance a GIS uses to search for the closest vertex you are trying to move when you click on the map. If you aren’t within the search radius, the GIS won’t find and select any vertex of a feature for editing. In principle, it is quite similar to the snapping distance functionality.
Snapping distance and search radius are both set in map units so you may need to experiment to get the distance value set right. If you specify a value that is too big, the GIS may snap to a wrong vertex, especially if you are dealing with a large number of vertices close together. If you specify the search radius too small the GIS application won’t find any feature or vertex to move or edit.
Mainly designed for simplicity and for fast rendering but not for data analysis that require topology (such as finding routes across a network). Many GIS applications are able to show topological and simple feature data together and some can also create, edit and analyse both.
Let’s wrap up what we covered in this worksheet:
Here are some ideas for you to try with your learners:
If you don’t have a computer available, you can use a map of a bus or railway network and discuss the spatial relationships and topology with your learners.
Books:
Websites:
The QGIS User Guide also has more detailed information on topological editing provided in QGIS.
In the section that follows we will take a closer look at Coordinate Reference Systems to understand how we relate data from our spherical earth onto flat maps!