Next Article in Journal
Optimizing Cruising Routes for Taxi Drivers Using a Spatio-Temporal Trajectory Model
Next Article in Special Issue
A Virtual Geographic Environment for Debris Flow Risk Analysis in Residential Areas
Previous Article in Journal
Deriving Ephemeral Gullies from VHR Image in Loess Hilly Areas through Directional Edge Detection
Previous Article in Special Issue
Surveillance Video Synopsis in GIS
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Representation Method for Complex Road Networks in Virtual Geographic Environments

1
Key Laboratory of Virtual Geographic Environment, Nanjing Normal University, Ministry of Education, Nanjing 210023, China
2
State Key Laboratory Cultivation Base of Geographical Environment Evolution (Jiangsu Province), Nanjing 210023, China
3
Jiangsu Center for Collaborative Innovation in Geographical Information Resource Development and Application, Nanjing 210023, China
4
Suzhou Industrial Park Surveying, Mapping and Geoinformation Co., Ltd., Suzhou 215027, China
5
The 28th Research Institute of China Electronics Technology Group Corporation, Nanjing 210023, China
*
Author to whom correspondence should be addressed.
ISPRS Int. J. Geo-Inf. 2017, 6(11), 372; https://doi.org/10.3390/ijgi6110372
Submission received: 29 August 2017 / Revised: 14 November 2017 / Accepted: 15 November 2017 / Published: 18 November 2017

Abstract

:
Road networks are important for modelling the urban geographic environment. It is necessary to determine the spatial relationships of road intersections when using maps to help researchers conduct virtual urban geographic experiments (because a road intersection might occur as a connected cross or as an unconnected bridge overpass). Based on the concept of using different map layers to organize the render order of each road segment, three methods (manual, semi-automatic and mask-based automatic) are available to help map designers arrange the rendering order. However, significant efforts are still needed, and rendering efficiency remains problematic with these methods. This paper considers the Discrete, Crossing, Overpass, Underpass, Conjunction, Up-overlap and Down-overlap spatial relationships of road intersections. An automatic method is proposed to represent these spatial relationships when drawing road networks on a map. The data-layer organization method (reflecting road grade and elevation-level information) and the symbol-layer decomposition method (reflecting road covering order in the vertical direction) are designed to determine the rendering order of each road element when rendering a map. In addition, an “auxiliary-drawing-action” (for drawing road segments belonging to different grades and elevations) is proposed to adjust the rendering sequences automatically. Two experiments are conducted to demonstrate the feasibility and efficiency of the method, and the results demonstrate that it can effectively handle spatial relationships of road networks in map representations. Using the proposed method, the difficulty of rendering complex road networks can be reduced.

1. Introduction

Road networks are widely distributed in urban environments and have played key roles in a range of urban modelling studies, such as urban growth simulation [1,2], urban transportation modelling [3,4], and city road noise simulation [5,6] studies. Maps are widely used to describe geo-spatial objects and communicate geo-information to map users, especially in the process of conducting virtual urban geographic experiments [7,8,9,10,11,12,13,14]. In topographic map representations, the rendering of road networks usually requires data selection, cartography generalization, legend design and other related work [15,16,17]. Generally, roads in road networks are organized in different linear map layers that are drawn by using different linear symbols (with different colours, widths, textures and other symbol attributes) according to the grade and elevation information. To clearly show the connectivity and spatial distribution of road networks in a map, complexity and difficulty primarily manifest in the handling of spatial relation information on road intersections [18,19,20]. The spatial relationships of road intersections are typically complex because of differences in the connectivity of different roads; for example, roads may cross each other at the same level, bridges may cross over other roads, and highway ramps may link different roads at different elevations. Drawing road intersections formed by two different road elements without considering their spatial relationships can generate confusion because it may be unclear whether the two roads are connected, especially for typical cases, such as accessibility analysis [21,22]. Therefore, accurate and clear representations of the spatial relationship of road intersections in maps are important for providing map readers with a comprehensive understanding of road networks [23,24,25].
There are two basic approaches to represent road networks in a topographic map: single line (Figure 1a) and double line (Figure 1b, also called a “cased line”). The single-line approach can describe the spatial distribution of a road network concisely, whereas the double-line can be used to more clearly represent the vertical relationship of two roads at an intersection [26,27]. With the help of the Styled Layer Descriptor (SLD) specification proposed by the Open GIS Consortium (OGC), both of these approaches can be implemented by using the Stroke element [28,29]. As shown in Figure 1, the Stroke element contains a range of symbolization parameters, such as colour, width, line cap, and line join. For the single-line approach, road networks can be drawn by using the symbol with one Stroke, and for the double-line approach, the symbol can be constructed by using two different Strokes (one for the inner line and one for the outer line).
Based on the SLD standard, symbols with different line width parameters and different colour parameters can be employed to distinguish roads of various types and grades. However, when drawing large road elements together, map readers may nonetheless have difficulty determining the connectivity and spatial relationships of road networks. Figure 2 illustrates some typical drawing errors in a map. If all of the road segments are rendered together, the higher (in elevation) roads cover the lower (in elevation) roads and thus present a “block” effect.
Regarding these problems, the method of building a rendering list for road networks has been studied in the fields of Cartography and Geographic Information Systems (GIS) [24,25]. In utilizing this rendering list, the process of rendering road networks is primarily based on the “Painter Algorithm”. This algorithm uses a bottom-up strategy [29], wherein road elements at the top of the rendering list are drawn last. Accordingly, the three major methods for rendering road networks are described below.
(1)
Manual method: This method is primarily based on the human understanding of the spatial distribution of a road network, and typically requires repetitive manual work to determine the roads that should be drawn first and those that should be drawn later. Using this method, a map designer builds the rendering order manually; consequently, whenever a new road element is merged to a specific road network, the rendering order must be rebuilt.
(2)
Semi-automatic method: This method takes advantage of map layers and road attributes to assist map designers in conducting the symbolization process for roads and adjusting the rendering order. One typical example is the “symbol level drawing tool” in the ArcMap platform and the QGIS platform. Using this tool, map designers can organize the rendering order of each road in a more structural manner. However, additional manual processing work is required to control how the different linear map symbols (representing different roads) connect with each other.
(3)
Masking-based method: This method relies on computations to render the intersection area of two different road elements and employs an auxiliary “mask” to cover the road crosses. With the help of these masks, the elevation information of different roads can be described visually. This method does not change the original topology information included in the road network data [30,31]; however, when using this method to present road networks, the generation of intersections demands intensive computations, and the additional polygon masks limit the drawing efficiency.
By employing these methods, the rendering order of each road in a road network must be calculated to generate the rendering list. The road networks represented in a map should be consistent with the physical reality and reflect the importance of grade, with road elements of larger grades located in the upper portion of the rendering list to highlight their importance. The elevation of a road will also influence the rendering order. Smaller-grade roads (e.g., residential streets) must be placed into earlier-rendering portions of the rendering list than larger-grade roads (e.g., primary roads). However, roads at higher elevations (e.g., bridges, viaducts) should be rendered later than roads at lower elevations regardless of their grades. When grade and elevation information is considered, it becomes possible to clearly convey the real-world connectivity and distribution of road networks to map readers. In addition, because there are two determining factors (road grade and road elevation) involved in building a rendering list, the difficulty of building such structures typically increases in concert with the complexity of the road networks.
Generally, the organizational method of “map layers” has been widely approved as an effective approach to manage and distinguish map elements with different attributes. Using this method, the road elements of different grades are organized into various map layers, and roads with larger grades are typically higher (in elevation) than roads with smaller grades. Therefore, the method works by first drawing roads with smaller grades in a map layer and then drawing roads of higher grades in the next map layer [32]. This method partly serves to present the desired connectivity information: it draws all roads in a single map layer as connected and draws roads in different map layers as unconnected (with higher-grade roads covering smaller-grade roads). However, this “map layer-based” method distinguishes only road elements of different grades, and the vertical relationships among the different map layers (i.e., roads with different grades) are poorly described. Moreover, additional situations may cause problems; for example, when a smaller-grade road passes over a larger-grade road and when one road links two roads of different grades, such as when a ramp connects a city primary road to a highway. This latter situation is problematic because the ramp belongs to both the city primary road layer and the highway layer. When considering the connections between different roads and bridges or underground tunnels that cross over or under different grades of roads, the complexity of road networks increases. The use of different map layers cannot resolve this connectivity confusion problem because the layer approach builds the rendering order for all the road elements without integrating grade and elevation information.
Based on the above analysis, current approaches can be described as primarily focusing on adjusting the rendering order of roads in a road network, which typically requires specialized knowledge and skills to process the original road network data. The masking-based method demands less manual labour and can perform the rendering process automatically; however, it has efficiency limitations and requires additional efforts by map designers because designers must check for rendering errors (where certain mask polygons cover other road intersections).
In light of the limitations of the methods described above, this paper presents an effective and automatic approach for the cartographic rendering of complex road networks. The proposed method builds a rendering list by combining various linear map symbols (reflecting different grades of roads) with information on the elevation level of roads (reflecting their vertical sequence). Based on the principle of drawing higher-grade and higher elevation-level roads later in the rendering process, the proposed method organizes different roads into data-layers and decomposes road symbols into multiple symbol-layers. Then, it generates a range of drawing-actions by combining the data-layers with the different symbol-layers. An “auxiliary-drawing-action-based” strategy is designed to help simplify the sorting process of drawing-actions: the generated drawing-actions are first sorted based on elevation level and the grade importance factors of the data-layers. The symbol-layers of conjunction roads (i.e., ramps or links between two roads at different elevation levels) are then extracted into “auxiliary-drawing-actions”. The “auxiliary-drawing-action-based” method requires no additional geometry calculations and does not need to render auxiliary masks; therefore, the rendering efficiency is improved. Using the proposed method, the spatial relationships of road intersections can be represented clearly and correctly, and a visualized road network can remain consistent with human perceptions of road connectivity.
The organization of the remainder of this paper is as follows. Section 2 explains the basic methodology concerning the visualization of complex road networks. In Section 3, concepts of the spatial relationships of road intersections from a cartographic visualization viewpoint are presented. The proposed method, based on the conclusions related to the spatial relationships of road intersections and includes data organization and symbol decomposition, is discussed in detail, and the “auxiliary-drawing-action-based” method is explained. In Section 4, a basic implementation of the proposed method is demonstrated using application examples, and these experiments verify the feasibility and capability of the proposed method. Finally, in Section 5, the conclusions and discussion are presented.

2. Methodology

2.1. Method Design

The concept underlying the proposed method is the employment of two layers to generate the drawing-action, the data-layer and the symbol-layer. A drawing-action is a step in the rendering process of a road network that renders certain road elements with a specific symbol.
As shown in Figure 3a, the data-layer is used to separate different roads based on their corresponding grades; these preliminary data-layers are then sorted from the lowest road grade to the highest road grade. All of these data-layers are organized into a range of data-layer collections according to the value of elevation level. All the data-layer collections are sorted according to elevation level, whereas the data-layers within a data-layer collection are sorted based on the grade of each road (indicating its importance). As shown in Figure 3b, the sample road network is organized into two data-layer collections: one residential street collection and one main road collection. The residential street collection is lower in elevation level than the main road collection. In the main road collection, the primary roads and secondary roads are sorted based on their grades.
The symbol-layer is used to render a data-layer with a specific road symbol and facilitates determining the rendering order of the different data-layers in a data-layer collection. As shown in Figure 3a, for each data-layer, a specific road symbol must be assigned based on the symbolization rules for map applications. These road symbols need to be decomposed into separated symbol-layers (casing and filling), indicating that certain road elements should be symbolized using different partitions of a road symbol. As shown in Figure 3b, residential streets all have the same grade; therefore, intersection crosses formed by these streets are rendered by first drawing the casing symbol-layer and then drawing the filling symbol-layer. Because primary roads are more important than are secondary roads in the main road collection, the symbol-layers are sorted by road grade. Again, to render these roads, the casing symbol-layers of the primary symbol and the secondary symbol are drawn first; the filling symbol-layer of the secondary symbol is drawn next, and the filling symbol-layer of the primary symbol is drawn last.
By attaching a road symbol to each data-layer, the drawing-actions can be formed. Based on the sorted data-layers and the decomposed symbol-layers, a sorted drawing-action array can be built and then registered to the rendering list. Using this rendering list, the rendering process of a road network can be conducted, with the spatial relationships handled by the successive drawing-actions of this process. With the development of map design research, approaches similar to the proposed data-layer and symbol-layer concepts have been effectively used to organize geospatial data for map presentation. However, the spatial relationships of road intersections are rarely considered in the rendering process. In this paper, spatial relationship information associated with road intersections is integrated into data-layers and symbol-layers.

2.2. Data Organization Method

As shown in Figure 4, a range of interfaces is designed to help map designers prepare road network data with different road grade-classification systems. Three primary interfaces are designed to help prepare data for road network representations.
IDataLayer stores the essential properties of rendered road elements. The ObjectID attribute defines the unique identification associated with geometric information. The RoadGrade attribute indicates the grade of road elements, and the ElevationLevel attribute provides vertical elevation information. The RoadGrade and ElevationLevel attributes can be customized to use an external classification method. For example, the RoadGrade attribute may include 0 (other roads), 1 (village road), 2 (township road), 3 (county road), 4 (provincial road), and 5 (national road); whereas, the ElevationLevel attribute may include 0 (underpass), 1 (ground), 2 (overpass), 3 (second overpass), and 4 (third overpass).
The ConjunctionFlag attribute identifies a “conjunction” that connects a road at a lower elevation level to a road at a higher elevation level, and it indicates whether the rendering order of a road should be adjusted. The ConjunctionLevel attribute is used to record the ElevationLevel of the connected road with a road at a higher elevation level.
IDataLayerCollection is a collection of IDataLayer objects held at the same ElevationLevel attribute. All of the IDataLayer objects in the collection share the same ElevationLevel attribute. The SortDataLayer function is provided for sorting IDataLayers; therefore, a hierarchical IDataLayerCollection may have a “primary” IDataLayer, a “secondary” IDataLayer and a “tertiary” IDataLayer.
ICollectionContainer contains a set of IDataLayerCollections sorted from lower ElevationLevel objects to higher ElevationLevel objects (the SortCollection function is provided to sort IDataLayerCollections). By drawing these sorted IDataLayerCollections, each successive IDataLayerCollection (higher elevation level) will be located on top of the previous IDataLayerCollection (lower elevation level).

2.3. Decomposition of Road Symbols

Based on the above analysis, an extensible interface solution for building the road symbol system and decomposing road symbols can be designed. As shown in Figure 5, the interface IRoadSymbol is designed to describe the attributes of a road symbol. In IRoadSymbol, the SymbolName property holds the name of a road symbol (e.g., primary road, residential street, highway). SymbolID is designed to indicate a unique road symbol (that can be assigned to an IDataLayer to support symbolized drawing), SymbolLayers is a sorted collection of ISymbolLayer constructs, and LayerCount indicates how many ISymbolLayer constructs a road symbol requires. In addition, all of the ISymbolLayers in IRoadSymbol are organized from bottom to top.
The ISymbolLayer interface mainly describes the rendering colour and width, which significantly influence the drawing of road element effects. In ISymbolLayer, RenderColour indicates the drawing colour, Width indicates the drawing width, LineJoin indicates the join type at the corner of two intersecting line segments (a Join enumeration is used to indicate Round, Miter or Bevel joins), and LineCap is used to determine how to draw the start and end of a line or set of lines (a Cap enumeration is used to indicate Butt, Round or Square).
The sample symbol in Figure 5 is constructed with two layers: a casing ISymbolLayer (black) and a filling ISymbolLayer (yellow). The width of the casing is W1, and the width of the filling is W2 (W2 is slightly narrower than W1). Multiple ISymbolLayers can be added into IRoadSymbol, and the ISymbolLayer can be extended with different drawing effects. The colour and width properties are two basic parameters for drawing road elements with ISymbolLayer. The Draw function is provided for external applications; thus, to draw linear map symbols, users can employ customized rendering technologies, such as the Graphic Device Interface plus (GDI+) or Anti-Grain Geometry (AGG) libraries for 2-dimensional map applications, and Open Graphic Library (OpenGL) or DirectX 3D (D3D) libraries for 3-dimensional map applications.

3. Rendering Road Networks Based on the Spatial Relationships of Road Intersections

Following the basic idea of constructing a rendering list, this paper presents a corresponding method to organize various roads in a road network. As shown in Figure 6, from the perspective of vertical covering, the spatial relationships of road intersections are defined. Based on the defined spatial relationships, the data organization method is constructed, and then the rendering method, using data-layer and symbol-layer to construct the rendering list, is constructed for the drawing road network considering the spatial relationships.

3.1. Spatial Relationships of Road Intersections

Previous research on topological spatial relationships has provided support for various geometrical operations [33], such as the 4/9 intersection model [34], RCC model [35], and Voronoi-based 9-intersection model [36]. However, these topology-related studies have primarily been performed at the spatial-analysis level. Typical spatial relationships are based on geometric characteristics (described by terms such as “intersect”, “cross”, “touch”, “contain” and “overlap”) [37], and they are not fully suitable for describing the spatial relationships of road intersections. Moreover, these relationships are too complicated to be directly applied to the visualization of road networks [38]. To provide an accurate road network representation, semantic information should be integrated into the description of the spatial relationships of road intersections. According to a cartographic visualization, the spatial relationships of road intersections can be summarized as follows:
  • Discrete refers to one road that is disjointed from other roads without any shared portion.
  • Crossing refers to one road intersecting with another road in which the type of intersection is typically presented as a T-type, Y-type, X-type or circular intersection.
  • Overpass refers to two roads that are at different elevation levels in which the road with a higher elevation passes over the road with a lower elevation (e.g., a pedestrian bridge).
  • Underpass is the opposite of overpass and typically refers to an underground tunnel or a road at a lower elevation level below a road at a higher elevation level.
  • Conjunction refers to a link segment that connects two roads with different elevation levels.
  • Up-Overlap refers to two parallel roads at different elevations where the road with higher elevation level partly or fully covers the road with lower elevation level.
  • Down-Overlap is the opposite of up-overlap and typically refers to one road that is partly or fully covered by a higher elevation-level road.
In Figure 7, these terms are presented with illustrations and corresponding satellite images, and the spatial relationships of road intersections are explained.

3.2. Road Network Data Organization Method Considering Spatial Relationships

Based on the defined spatial relationships of road intersections, the proposed data-layers should exhibit sufficient extensibility and flexibility to describe these spatial relationships. Using the proposed IDataLayer and ISymbolLayer interfaces, different data sources can be easily organized within the spatial relation information. This paper employs Open Street Map (OSM) data to organize road network data. OSM data are constructed by three basic elements: Node, Way and Relation. The Node element contains the coordination of a point, and the Way element is a collection of Node elements. The Relation element consists of one or more Node elements, Way elements or Relation elements, and it is used to define the logic or geographic relations between other elements. Within these basic elements, a range of Tag elements are used to record the extensive information. By using the key-value structure, various kinds of road attributes can be constructed, such as road name, road grade, and road layer.
Figure 8 introduces the process of using OSM data to prepare road network data. OSM data provide essential information that includes the “layer tag” (which describes vertical relationships among crossed roads or overlapped roads), the “highway tag” (which indicates the importance of roads), the “bridge tag” (which describes the road segment as a bridge) and other attributes [39]. The “layer tag” can be directly used as the ElevationLevel parameter in the IDataLayer that provides the vertical elevation information. The “highway tag” value can provide the road grade information, and the “bridge tag” can be used as an auxiliary attribute to generate the road grade information. Thus, it is easy to import OSM data into this method.
With the data organization method, a discrete spatial relationship can be described by using different polyline data for each road object; crossing, underpass, overpass, up-overlap, and down-overlap spatial relationships can be described by assigning different elevation-level flags for each polyline. Conjunction spatial relationships can be described by attaching two elevation-level flags to each polyline: one indicates the lower road element, and the other indicates the higher road element. Along with the development of data acquisition approaches, substantial data sources can provide information on the road network. In addition, the grade-classification methods for roads can vary among different countries and organizations. For example, according to the USGS cartographic standard, roads are divided by importance into five grades: primary, secondary, light-duty, unimproved and four-wheel-drive [40]. However, in China, roads are mainly graded as national, provincial, county level, township level, village level and other [41].

3.3. Auxiliary-Drawing-Action-Based Rendering Method

Based on the proposed data-layer organization method and the symbol-layer decomposition method, the rendering list can be built by generating sorted drawing-actions. The basic process to generate these sorted drawing-actions (see Figure 9) is as follows:
(1)
Iterate through all of the sorted data-layer collections (sorted by using the SortCollection function introduced in Section 2.2).
(2)
Use the SortDataLayer function for each data-layer collection to obtain a sorted data-layer list.
(3)
Iterate through the sorted data-layers in each data-layer collection, attach a road symbol to a data-layer and decompose the road symbol into a casing symbol-layer and a filling symbol-layer.
(4)
Merge all of the casing symbol-layers and filling symbol-layers in each data-layer collection together and then place the casing symbol-layers before the filling symbol-layers.
(5)
After iterating through all of the data-layer collections, generate the sorted drawing-actions and then register all of the drawing-actions to the rendering list to build an array of drawing-actions. From the start to the end of this array, the elevation level and importance (grade) should increase. Using this rendering list, the spatial relationships of road intersections in a road network can be represented by rendering each drawing-action.
Using the proposed method, the spatial relationships of road intersections are handled in accordance with the basic pattern of human visual recognition. The discrete spatial relationship is represented as the distribution of road elements, with road elements of different grades rendered with different symbols. To represent the crossing spatial relationship, the symbols must be blended to reflect the connectivity characteristics of crossing roads, and the related drawing-actions are handled by placing casing layers before filling layers in the rendering list. To properly represent the overpass, underpass, up-overlap and down-overlap spatial relationships, roads with lower elevation levels must be drawn before roads with higher elevation levels to reflect partial or fully overlapped relationships. The related drawing-actions are handled by placing the casing and filling layers (together) of lower roads before upper roads in the rendering list. Compared with the discrete, crossing, underpass, overpass, up-overlap and down-overlap spatial relationships, a conjunction spatial relationship is represented by adjusting the symbol-layer of different data-layers, and roads with a lower elevation level must be linked to roads with a higher elevation level.
To simplify this adjustment process, an “auxiliary-drawing-action” is proposed that solves the problem of added conjunctions without having to re-sort the data-layers and symbol-layers. An “auxiliary-drawing-action” is located above both of the linked data-layers, and it does not require changing the drawing-actions generated using the SortCollection and the SortDataLayer functions because each data-layer collection is assigned an “auxiliary-drawing-action” for all ramps (i.e., the conjunction spatial relationships). Therefore, drawing-actions related to the casing symbol-layer do not need be adjusted, whereas the drawing-action that is related to the filling symbol-layer should be moved to the “auxiliary-drawing-action”. When conjunction spatial relationships do not occur within a data-layer collection, the “auxiliary-drawing-action” is still added into the drawing-action array, although it would not invoke a rendering process.
Generally, if a road network with different elevation levels is organized into N data-layer collections, the layer number of the “auxiliary-drawing-action” is N-1. As shown in Figure 10, an example road network with two elevation levels (i.e., two data-layer collections) illustrates the method by which the conjunction spatial relationship is addressed using the “auxiliary-drawing-action” method. In Figure 10, Line1 (pink) passes over Line2 (orange), whereas Line3 (pink) is a ramp that connects the higher-elevation Line1 and the lower-elevation Line2. From the bottom to the top, the rendering process of the example road network is presented as a set of sorted drawing-actions. The “auxiliary-drawing-action” is located after the second data-layer collection so that it can adjust the rendering order of the ramp road. The filling symbol-layer of Line3 (a ramp) is then adjusted from the first data-layer collection to the “auxiliary-drawing-action”.
By generating drawing-actions and adjusting their sequence using the “auxiliary-drawing-action” method, the spatial relationships of road intersections in a road network can be handled appropriately and rendered automatically.

4. Results

To validate the capability and feasibility of the proposed method, this study designed a prototype map rendering system developed using the programming language C++. Test data were downloaded from the OSM datasets.

4.1. Basic Working Process of the Prototype System

The basic implementation of the proposed method consists of two processing steps: a preparation step and an adjustment step (as shown in Figure 11). In the preparation step, the road network data are extracted from the original OSM datasets, the data-layers are built based on each road polyline in the road network data, and the data-layer collections are arranged according to the “highway tag”, which is an attribute field in the OSM data. The symbol-layer is implemented based on the SLD specification. As shown in the top part of Figure 11, the ICollectionContainer attribute is implemented as an array that stores generated data-layer collections. In a data-layer collection, the drawing-actions are built by assigning a road symbol (composed of one casing symbol-layer and one filling symbol-layer) for each data-layer according to its grade. Finally, the drawing-actions are sorted based on the road symbols’ importance. After this preparation step is complete, the road network can be rendered by sequentially conducting the drawing-actions.
In the adjustment step, the ConjunctionFlag (as introduced in Section 3.1) is used to determine whether a road element needs to be adjusted. As shown in the bottom part of Figure 11, if the ConjunctionFlag of a data-layer is set to true, the corresponding drawing-action (filling) should be removed from its original rendering order and then inserted at the end of the next data-layer collection. This adjustment process does not affect other drawing-actions, and the iteration process in the implemented programme is linear (which can greatly improve the rendering efficiency).

4.2. Experiment Assessing the Capability of the Method to Represent the Spatial Relationships of Road Intersections

Data for two sample road intersections are rendered using the proposed method to verify its capabilities for drawing complex road networks. As shown in Figure 12, the first sample intersection contains roads at two levels of elevation, whereas the second sample intersection contains roads at three levels of elevation. Both samples contain conjunction roads that link roads at different elevation levels.
In the first data sample, the roads at the lower elevation level connect with the roads at the upper elevation level by eight loop ramps. As shown in the left panel of Figure 12, the road network data are processed as two data-layer collections (Collection1 and Collection2), and the conjunctions are organized into one auxiliary layer. When rendering this road network to a map, the rendering order flows from Collection1 to Collection2 to the auxiliary layer. Figure 13 shows the rendering process.
For the second data sample (right panel of Figure 12), the road network data are processed as three data-layer collections (Collection1, Collection2 and Collection3), and the conjunctions are organized into two “auxiliary-drawing-actions”. The rendering process is shown in Figure 14. The first and second data-layer collections (i.e., Collection1 and Collection2) can be rendered successively. After rendering Collection2, “auxiliary-drawing-action-1” should be checked and rendered if any conjunction roads occur between Collection1 and Collection2. The rendering of Collection3 and “auxiliary-drawing-action-2” are handled similarly.

4.3. Experiment Comparing the Rendering of Road Network Data between Methods

The basic goal of the proposed method is to represent the spatial relationships of road intersections so that road networks are rendered correctly and automatically when drawing maps. This paper employs data for two road networks to demonstrate the differences in efficiency between the proposed method and the mask-based method. The manual method, semi-automatic method and masked-based method are currently available for road network rendering. For the manual and semi-automatic methods, which involve complicated manual adjustment work, spatial relationships of road intersections can be rendered correctly. The drawing effect between the proposed method and each of these two methods is the same when using the same symbols, and the rendering time cannot be compared because of the difference between the manual and automatic methods. Therefore, the mask-based method is employed here for the comparison with the proposed method.
In the first sample dataset, the Siyuanqiao junction (in Beijing, China) was selected. The Siyuanqiao junction is an extremely complex structure consisting of twenty ramps and twenty-six bridges, and the dataset contains 1118 linear elements and 5987 vertices. Figure 15 shows the results for this sample dataset rendered by using the mask-based method and the proposed method.
The second sample dataset represents the I-96 & M-39 interchange. The four-level stack has one major road crossing another on a bridge, and connector roads cross on two additional levels. The test data contain 1862 linear elements and 15,771 vertices. Figure 16 shows the results of rendering using the mask-based method and the proposed method.
As shown in the experiments, the proposed method handles the various spatial relationships of road intersections correctly in map representations. Using the mask-based automatic method can also represent these spatial relationships; however, the rendering effect is influenced by the shape of these masks. As shown in Figure 15 and Figure 16, some “splits” can be formed when the intersected geometries are too small. To avoid this “too small” problem, the mask-based method is employed in the OSM platform by directly treating all bridges (the “bridge tag” as “yes”) as masks. This approach still encounters the problem that a bridge may cover a road. In Figure 17, some detailed rendering effects of the proposed and OSM methods are presented for comparison.
The processing efficiency of the mask-based method is limited because it requires frequent computations for geometrical intersections. Table 1 shows the results of the experiments of rendering the road networks when using the proposed method and the corresponding mask-based automatic method. The topological computation time and road rendering time for each method are presented to allow comparison. To simulate real map operations, such as moving, zoom out, and zoom in, all of the rendering experiments were conducted 100 times (the topological computation time was not included in the rendering time).
When rendering the Siyuanqiao sample dataset, the total time for the mask-based method was 405 milliseconds (including 61 milliseconds for the topological computation and 344 milliseconds for rendering), whereas the total time required by the proposed method was 252 milliseconds. This paper’s approach requires significantly less time than does the mask-based method because the proposed method does not have to calculate or analyse any additional topological relationships. In addition, the rendering time using the proposed method is less than that using the mask-based method. This is mainly because the mask-based method needs to draw auxiliary masks. The original line segment count of the Siyuanqiao sample dataset was 1118. For the proposed method, two symbol-layers (casing and filling) were employed in the experiment, and the rendering segment count was thus 2236 (double the number of line segments); for the mask-based method, extra segments (i.e., masks) needed to be rendered, resulting in total rendering segment count of 2670. The time comparison of rendering the I-96 & M-39 sample dataset yielded similar results. Therefore, the proposed method can greatly improve the rendering efficiency of road networks.

5. Conclusions and Discussion

This paper first organized the spatial relationships of road intersections into “discrete”, “underpass”, “overpass”, “crossing”, “conjunction”, “up-overlap”, and “down-overlap” categories. By considering the representation of these spatial relationships, as well as the characteristics of human visual perception, the road elements in a road network were organized into data-layers and data-layer collections. Using the proposed road symbol decomposition method, different symbol-layers were assigned to data-layers and organized into a sequence of sorted drawing-actions. In addition, the “auxiliary-drawing-action-based” method was proposed to automatically handle the “conjunction” spatial relationship. Using an experimental map rendering system, a variety of complex road networks were represented, and the spatial relationships were rendered correctly. Moreover, the efficiency of rendering the road networks was greatly improved using the proposed method compared with the traditional masked-based method.
However, because map rendering and visualization research is a continuing effort, future research is still needed, especially with regard to the following aspects.
(1)
Research into a friendly graphical user interface (GUI) for importing road network data and building road symbols is needed. The rendering results for road networks are closely related to the original data and the attributes of each road element (such as the road type, road level, and numbers of lanes and ramps). If the recorded data are incorrect, errors will appear as graphical errors in the rendering results. Thus, a GUI programme is required to help map designers find and amend these errors. In addition, the ability to build different linear map symbols for rendering roads should be provided by the GUI programme.
(2)
Empirical studies are needed to verify the proposed method’s effectiveness. Cartographers pay more attention to the visual perception of map readers in the process of designing and rendering maps. An empirical study is needed to discuss the differences of map symbols among different population groups to explore the visual information of map symbols and assesses whether this information can help map readers understand the map. Empirical experiments would improve map representation and increase the accuracy of communicating geographic information.
(3)
Research into integration with other virtual geographic environment-related methods is needed, such as 3-dimensional (3D) rendering technologies. With the proposed method, the grade and elevation-level information on each road in a road network can be organized in a structural manner. Using these two types of information, a pseudo-3D scene can be generated by assigning different Z values to roads with different elevation levels. For example, a ground level could be assigned a Z value of 2, an overpass level could be assigned a Z value of 6, a second overpass could be assigned a Z value of 10, and a third overpass could be assigned a Z value of 14. Thus, a 3D scene that is more vivid than a 2D map can be presented to illustrate a complex road network and help researchers conveniently conduct virtual experiments of the urban environment.

Acknowledgments

This project was supported by the National Basic Research Program of China (973 Program) (Grant No. 2015CB954102), the National Natural Science Foundation of China (Grant Nos. 41471317, 41371424, 41571433 and 41701441) and the Priority Academic Program Development of Jiangsu Higher Education Institutions (Grant No. 164320H116). The authors thank the Jiangsu Center for Collaborative Innovation in Geographical Information Resource Development and Application for providing technical support.

Author Contributions

Peibei Zheng, Songshan Yue and Hong Tao conceived and designed the experiments; Peibei Zheng performed the experiments; Peibei Zheng and Songshan Yue analysed the data; Mingguang Wu, Guonian Lv and Chuanlong Zhou contributed reagents/materials/analysis tools; Peibei Zheng, Hong Tao and Songshan Yue wrote the paper.

Conflicts of Interest

The authors declare that no conflicts of interest exist.

References

  1. Chen, Y.; Li, X.; Liu, X.; Ai, B.; Li, S. Capturing the varying effects of driving forces over time for the simulation of urban growth by using survival analysis and cellular automata. Landsc. Urban Plan. 2016, 152, 59–71. [Google Scholar] [CrossRef]
  2. Storeygard, A. Farther on down the road: Transport costs, trade and urban growth in sub-Saharan Africa. Rev. Econ. Stud. 2016, 83, 1263–1295. [Google Scholar] [CrossRef]
  3. Hoeven, F.V.D.; Egmond, P.V.; Spek, S.V.D.; Nes, A.V.; Cré, I.; Berends, H.; Hoogendoorn, C. New tools for design and operation of urban transport interchange facilities, zones and development areas. In Proceedings of the 5th TRA Conference Proceeding, Paris, France, 14–17 April 2014. [Google Scholar]
  4. Avila-Torres, P.; Caballero, R.; Litvinchev, I.; Lopez-Irarragorri, F.; Vasant, P. The urban transport planning with uncertainty in demand and travel time: A comparison of two defuzzification methods. J. Ambient Intell. Humaniz. Comput. 2017. (online). Available online: https://link.springer.com/article/10.1007/s12652-017-0545-x (accessed on 17 November 2017).
  5. Zuo, F.; Li, Y.; Johnson, S.; Johnson, J.; Varughese, S.; Copes, R.; Liu, F.; Wu, H.J.; Hou, R.; Chen, H. Temporal and spatial variability of traffic-related noise in the City of Toronto, Canada. Sci. Total Environ. 2014, 472, 1100–1107. [Google Scholar] [CrossRef] [PubMed]
  6. Lu, L.; Becker, T.; Löwner, M.O. 3D Complete Traffic Noise Analysis Based on CityGML; Springer International Publishing: Cham, Switzerland, 2017. [Google Scholar]
  7. Kraak, M.J.; Ormeling, F.J. Cartography: Visualization of Spatial Data, 3rd ed.; Guilford Press: New York, NY, USA, 2011. [Google Scholar]
  8. Andrienko, G.; Fabrikant, S.I.; Griffin, A.L.; Dykes, J.; Schiewe, J. Geoviz: Interactive maps that help people think. Int. J. Geogr. Inf. Sci. 2014, 28, 2009–2012. [Google Scholar] [CrossRef]
  9. Lin, H.; Chen, M.; Lu, G. Virtual geographic environment: A workspace for computer-aided geographic experiments. Ann. Assoc. Am. Geogr. 2013, 103, 465–482. [Google Scholar] [CrossRef]
  10. Chen, M.; Lin, H.; Hu, M.; He, L.; Hu, M.Y.; Zhang, C.X. Real-geographic-scenario-based virtual social environments: Integrating geography with social research. Environ. Plan. B 2013, 40, 1103–1121. [Google Scholar] [CrossRef]
  11. Lin, H.; Chen, M.; Lu, G.N.; Zhu, Q.; Gong, J.H.; You, X.; Wen, Y.N.; Xu, B.L.; Hu, M.Y. Virtual Geographic Environments (VGEs): A New Generation of Geographic Analysis Tool. Earth Sci. Rev. 2013, 126, 74–84. [Google Scholar] [CrossRef]
  12. Lin, H.; Batty, M.; Jørgensen, S.E.; Fu, B.J.; Konecny, M.; Voinov, A.; Torrens, P.; Lu, G.N.; Zhu, A.X.; Wilson, J.P.; et al. Virtual environments begin to embrace process-based geographic analysis. Trans. GIS 2015, 19, 493–498. [Google Scholar] [CrossRef]
  13. Chen, M.; Lin, H.; Kolditz, O.; Chen, C. Developing dynamic Virtual Geographic Environments (VGEs) for geographic research. Environ. Earth Sci. 2015, 74, 6975–6980. [Google Scholar] [CrossRef]
  14. Chen, M.; Lin, H.; Lu, G.N. Virtual Geographic Environments. In the International Encyclopedia of Geography; Wiley and the American Association of Geographers (AAG): Malden, MA, USA, 2017. [Google Scholar] [CrossRef]
  15. Mackaness, W. Analysis of urban road networks to support cartographic generalization. Cartogr. Geogr. Inf. Syst. 1995, 22, 306–316. [Google Scholar] [CrossRef]
  16. Karagiorgou, S.; Pfoser, D.; Skoutas, D. Segmentation-based road network construction. In Proceedings of the 21st ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems, Orlando, FL, USA, 5–8 November 2013; pp. 460–463. [Google Scholar]
  17. Suba, R.; Meijers, B.M.; Van Oosterom, P.J.M. Large scale road network generalization for vario-scale map. In Proceedings of the 18th ICA Workshop on Generalisation and Multiple Representation, Rio de Janeiro, Brazil, 21 August 2015. [Google Scholar]
  18. Avelar, S. Visualizing public transport networks: An experiment in Zurich. J. Maps 2008, 4, 134–150. [Google Scholar] [CrossRef]
  19. Brewer, C.A.; Stanislawski, L.V.; Buttenfield, B.P.; Sparks, K.A.; McGilloway, J.; Howard, M.A. Automated thinning of road networks and road labels for multiscale design of the National map of the United States. Cartogr. Geogr. Inf. Sci. 2013, 40, 259–270. [Google Scholar] [CrossRef]
  20. Olson, D.R.; Bialystok, E. Spatial Cognition: The Structure and Development of Mental Representations of Spatial Relations; Psychology Press: New York, NY, USA, 1983. [Google Scholar]
  21. Rice, M.T.; Jacobson, R.D.; Caldwell, D.R.; McDermott, S.D.; Paez, F.I.; Aburizaiza, A.O.; Curtin, K.M.; Stefanidis, A.; Qin, H. Crowdsourcing techniques for augmenting traditional accessibility maps with transitory obstacle information. Cartogr. Geogr. Inf. Sci. 2013, 40, 210–219. [Google Scholar] [CrossRef]
  22. Chen, M.; Lin, H.; Liu, D.; Zhang, H.P.; Yue, S.S. An object-oriented data model built for blind navigation in outdoor space. Appl. Geogr. 2015, 60, 84–94. [Google Scholar] [CrossRef]
  23. Eicher, C.; Briat, M. Supporting interactive editing of cartographic representations in GIS software. In Proceedings of the 22nd ICA Conference Proceedings, A Coruña, Spain, 9–16 July 2005; Available online: http://icaci.org/files/documents/ICC_proceedings/ICC2005/htm/pdf/oral/TEMA3/Session%204/CORY%20EICHER.pdf (accessed on 15 November 2017).
  24. Haunert, J.H.; Sering, L. Drawing road networks with focus regions. IEEE Trans. Vis. Comput. Graph. 2011, 17, 2555–2562. [Google Scholar] [CrossRef] [PubMed]
  25. Trapp, M.; Semmo, A.; Döllner, J. Interactive rendering and stylization of transportation networks using distance fields. In Proceedings of the 10th International Conference on Computer Graphics Theory and Applications, Berlin, Germany, 11–14 March 2015; Available online: https://www.researchgate.net/publication/269697434_Interactive_Rendering_and_Stylization_of_Transportation_Networks_Using_Distance_Fields (accessed on 15 November 2017).
  26. Lin, S.S.; Lin, C.H.; Hu, Y.J.; Lee, T.Y. Drawing road networks with mental maps. IEEE Trans. Vis. Comput. Graph. 2014, 20, 1241–1252. [Google Scholar] [CrossRef] [PubMed]
  27. Wilkie, D.; Sewall, J.; Lin, M.C. Transforming GIS data into functional road models for large-scale traffic simulation. IEEE Trans. Vis. Comput. Graph. 2012, 18, 890–901. [Google Scholar] [CrossRef] [PubMed]
  28. Open GIS Consortium Inc. Styled Layer Descriptor Implementation Specification 1.0. Available online: http://www.opengeospatial.org/standards/sld (accessed on 15 November 2017).
  29. Iosifescu Enescu, I.; Panchaud, N.H.; Heitzler, M.; Iosifescu Enescu, C.M.; Hurni, L. Towards Better WMS Maps Through the Use of the Styled Layer Descriptor and Cartographic Conflict Resolution for Linear Features. Cartogr. J. 2015, 52, 125–136. [Google Scholar] [CrossRef]
  30. Migurski, M. HighRoad. Available online: https://github.com/migurski/HighRoad (accessed on 22 November 2017).
  31. Infrastructure for Spatial Information in Europe. INSPIRE Data Specification on Transport Networks—Guidelines. Available online: http://inspire.ec.europa.eu/documents/Data_Specifications/INSPIRE_DataSpecification_TN_v3.0.pdf (accessed on 15 November 2017).
  32. Wu, C.; Liu, J.; Li, Z. Research on National 1:50000 topographic cartography data organization. ISPRS Ann. Photogramm. Remote Sens. Spat. Inf. Sci. 2014, II-4, 83–89. [Google Scholar] [CrossRef]
  33. Praing, R.; Schneider, M. Efficient implementation techniques for topological predicates on complex spatial objects. GeoInformatica 2008, 12, 313–356. [Google Scholar] [CrossRef]
  34. Kainz, W.; Egenhofer, M.J.; Greasley, I. Modelling spatial relations and operations with partially ordered sets. Int. J. Geogr. Inf. Syst. 1993, 7, 215–229. [Google Scholar] [CrossRef]
  35. Cohn, A.G.; Bennett, B.; Gooday, J.; Gotts, N. RCC: A calculus for region based qualitative spatial reasoning. Geoinformatica 1997, 1, 275–316. [Google Scholar] [CrossRef]
  36. Chen, J.; Li, C.M.; Li, Z.L.; Gold, C. A Voronoi-based 9-intersection model for spatial relations. Int. J. Geogr. Inf. Sci. 2001, 15, 201–220. [Google Scholar] [CrossRef]
  37. Brisaboa, N.R.; Luaces, M.R.; Rodríguez, M.A.; Seco, D. An inconsistency measure of spatial data sets with respect to topological constraints. Int. J. Geogr. Inf. Sci. 2013, 28, 56–82. [Google Scholar] [CrossRef]
  38. Agrawala, M.; Stolte, C. Rendering effective route maps: Improving usability through generalization. In Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques, New York, NY, USA, 12–17 August 2001; Available online: http://graphics.stanford.edu/papers/routemaps/rtmaps.pdf (accessed on 15 November 2017).
  39. OpenStreetMap wiki. Map Features. Available online: http://wiki.openstreetmap.org/wiki/Map_Features (accessed on 17 November 2017).
  40. FGDC. Digital Cartographic Standard for Geologic Map Symbolization. Available online: http://ngmdb.usgs.gov/fgdc_gds/geolsymstd/fgdc-geolsym-all.pdf (accessed on 15 November 2017).
  41. Chen, Y.W.; Yap, K.H.; Lee, J.Y. Tianditu: China’s first official online mapping service. Media Cult. Soc. 2013, 35, 234–249. [Google Scholar] [CrossRef]
Figure 1. Linear map symbols representing road networks.
Figure 1. Linear map symbols representing road networks.
Ijgi 06 00372 g001
Figure 2. Typical drawing errors of road networks in a map.
Figure 2. Typical drawing errors of road networks in a map.
Ijgi 06 00372 g002
Figure 3. Basic process of building the rendering list.
Figure 3. Basic process of building the rendering list.
Ijgi 06 00372 g003
Figure 4. Design of the road layer description interface.
Figure 4. Design of the road layer description interface.
Ijgi 06 00372 g004
Figure 5. Design of the symbol description interface.
Figure 5. Design of the symbol description interface.
Ijgi 06 00372 g005
Figure 6. Research pipeline of the proposed method.
Figure 6. Research pipeline of the proposed method.
Ijgi 06 00372 g006
Figure 7. Spatial relationships of road networks.
Figure 7. Spatial relationships of road networks.
Ijgi 06 00372 g007
Figure 8. Open Street Map (OSM) data used to prepare a road network presentation.
Figure 8. Open Street Map (OSM) data used to prepare a road network presentation.
Ijgi 06 00372 g008
Figure 9. Basic process to generate the drawing-actions.
Figure 9. Basic process to generate the drawing-actions.
Ijgi 06 00372 g009
Figure 10. Example rendering process of a road network with a conjunction spatial relationship.
Figure 10. Example rendering process of a road network with a conjunction spatial relationship.
Ijgi 06 00372 g010
Figure 11. Flowchart of the automatic rendering process for road networks
Figure 11. Flowchart of the automatic rendering process for road networks
Ijgi 06 00372 g011
Figure 12. Two road networks with different elevations.
Figure 12. Two road networks with different elevations.
Ijgi 06 00372 g012
Figure 13. Rendering sequence for road networks with two levels.
Figure 13. Rendering sequence for road networks with two levels.
Ijgi 06 00372 g013
Figure 14. Rendering sequence for road networks with three levels.
Figure 14. Rendering sequence for road networks with three levels.
Ijgi 06 00372 g014
Figure 15. Rendering results for the first sample dataset.
Figure 15. Rendering results for the first sample dataset.
Ijgi 06 00372 g015
Figure 16. Rendering results for the second sample dataset.
Figure 16. Rendering results for the second sample dataset.
Ijgi 06 00372 g016
Figure 17. Rendering details compared with OSM.
Figure 17. Rendering details compared with OSM.
Ijgi 06 00372 g017
Table 1. Time costs of rendering the two experimental datasets.
Table 1. Time costs of rendering the two experimental datasets.
Point CountLine Segment CountRendering Segment CountExtra Segment CountTime Cost (in Milliseconds)
Topological ComputationRendering
Mask-based method
China sample
59871118267021761344
Mask-based method
US sample
15,77118624122199109566
This paper’s method
China sample
59871118223600252
This paper’s method
US sample
15,7711862372400471

Share and Cite

MDPI and ACS Style

Zheng, P.; Tao, H.; Yue, S.; Wu, M.; Lv, G.; Zhou, C. A Representation Method for Complex Road Networks in Virtual Geographic Environments. ISPRS Int. J. Geo-Inf. 2017, 6, 372. https://doi.org/10.3390/ijgi6110372

AMA Style

Zheng P, Tao H, Yue S, Wu M, Lv G, Zhou C. A Representation Method for Complex Road Networks in Virtual Geographic Environments. ISPRS International Journal of Geo-Information. 2017; 6(11):372. https://doi.org/10.3390/ijgi6110372

Chicago/Turabian Style

Zheng, Peibei, Hong Tao, Songshan Yue, Mingguang Wu, Guonian Lv, and Chuanlong Zhou. 2017. "A Representation Method for Complex Road Networks in Virtual Geographic Environments" ISPRS International Journal of Geo-Information 6, no. 11: 372. https://doi.org/10.3390/ijgi6110372

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop