Schematization Plugin for QGIS
ISBN 978-85-88783-11-9
Authors
1Maheshwari, N.; 2Pociask, P.; 3Delazari, L.; 4Ware, M.; 5Anand, S.
1IIIT HYDERABAD Email: nishith.maheshwari@research.iiit.ac.in
2GIS SUPPORT SP. Z O.O. Email: piotr.pociask@gis-support.pl
3UFPR Email: luciene@ufpr.br
4UNIVERSITY OF SOUTH WALES Email: mark.ware@southwales.ac.uk
5UNIVERSITY OF NOTTINGHAM Email: suchithanand76@gmail.com
Abstract
A schematic map can be defined as a map with highly generalized lines and exaggerated or reduced data points with all the information abstracted except the ones that it is trying to convey. However, it is created to follow certain constraints that correctly represents a network and preserves the topological relations between the elements. Schematic maps are useful when we need to represent an overall orientation of a network while maintaining relative positioning. Through this project, which was done as part of the OSGeo - Google Summer of Code 2014, we are trying to convert the generalization subjectivity into a set of rules/functions (with focus on schematization) in the form of a plug-in for the QGIS software. We have used a set of data composed by lines of different directions, lengths and orientations. We have divided the process of schematization into essentially two main tasks - “Simplification” and “Applying Constraints”. The first step for schematization was simplifying the QGIS layer. There are usually many redundant points in the raw network data, which lead to it having a very jagged structure. In order to start the simplification process, the whole layer was dissolved into a single feature, using the qgis:dissolve algorithm. After, it was applied the qgis:multiparttosingleparts algorithm, and this single feature was broken at the vertices, so that we may have multiple features of single line. The next step was applying the QgsTopologyPreservingSimpler algorithm on each feature of the layer (based on Douglas-Peucker Algorithm but also preserves topology). The second task was the application of the constraints. We have defined the following constraints to be implemented: a) Angle/Direction – the lines should be orientated in either horizontal, vertical or diagonal directions; b) Distance - there should be a constraint of minimum length for a feature and between two non-connected features there should be a minimum separation; c) Displacement - after the orientation the vertices should remain as close to their original position as possible; d) Topological - any operation should not change the topology of the layer. This last one is the most important constraint and is most likely to be disrupted by the application of other constraints. The focus of this research was mainly on the topology and the angle/direction constraints. To maintain the topological constraint, the simplification was done using an algorithm which preserves topology. While applying the angle/direction constraint our approach was to start with the longest line, orient it in either horizontal (90°), vertical (0° or 180°) or diagonal (45° or 135°) direction, whichever was closest. Then orient the lines that were intersecting the previous oriented one in a similar way based on its closeness to one of the above-mentioned directions. This process was repeated with the lines just reoriented and so on. Therefore, in a breadth first manner all the lines in the layer were oriented in the proper directions. There were some problems since the change in the orientation of one line would mean change in position of one of the vertices, which leads to change in orientation of all the lines that have that vertex as common. This would lead to a change in topology, new intersections or overlapping lines. Therefore, we incorporated a check mechanism in the algorithm, which would take care of these possible errors. This mechanism would check if there are any new line intersections in the layer or overlapping features after the orientation of a feature, then the orientation of that particular feature is discarded and it retains its original orientation. The achieved results show that the algorithm preserved the topology aspect and was able to handle with the direction constraint. Further implementations have to consider the others constraints in order to solve the problems of congested areas and displacement of lines.
Keywords
schematic map; topology; open software