Technological advancements have lead to maps being used virtually everywhere (e. g. mobile smartphones). Map use is more interactive than ever before: users can zoom in, out and navigate on the (interactive) maps. Therefore recent map generalisation research shows a move towards continuous generalisation. Although there are some useful efforts (van Kreveld, 2001; Sester and Brenner, 2005; Nöllenburg et al., 2008), but no optimal solution has come yet.
This paper introduces the first true vario-scale structure for geographic information: a small step in the scale dimension leads to a small change in representation of geographic features that are represented on the map. From the structure continuous generalisations of real world features can be derived and can be used for presenting a smooth zoom action to the user. Furthermore, mixed-scale visualisations can be derived (more and less generalised features shown together in one 2D map) that are consistent with each other. Making such a transition area is mostly one of the difficulties for 3D computer graphic solutions (e. g. using stitch strips based on triangles, like in Noguera et al., 2010).
Vario-scale and tGAP structure
The tGAP structure has been presented as a vario-scale structure (van Oosterom, 2005). In summary, the tGAP structure traditionally starts with a planar partition at the most detailed level (largest scale). Next the least important object (based on geometry and classification) is selected, and then merged with the most compatible neighbour (again based on geometry and classification). This is repeated until only a single object is remaining, the merging of objects is recorded in tGAP-tree structure and the last object is the top of the tree. The (parallel) simplification of the boundaries is also executed during this process and can be recorded in a specific structure per boundary: the BLG-tree (binary line generalisation). As assigning the least important object in certain cases to just a single neighbour may result in a suboptimal map representation, the weighted split (and assigning parts to multiple neighbours) was introduced. This changed the tGAP-tree into a tGAP Directed Acyclic Graph (DAG) and together with the BLG-tree, this is called the tGAP structure. The tGAP structure can be seen as result of the generalisation process and can be used to efficiently select a representation at any required level of detail (scale or importance).
Figure 1 shows 4 maps fragments and the tGAP structure in which the following generalisation operations have been applied:
- Collapse road object from area to line (and split and assign free space to neighbours);
- Remove forest area and merge free space into neighbour farmland;
- Simplify boundary between farmland and water area.
The tGAP structure is a DAG and not a tree structure, as the split causes the road object to have several parents; see Figure 1(e). In our current implementation the simplify operation on the relevant boundaries is combined with the remove or collapse/split operators and is not a separate step. However, for the purpose of this paper it is clearer to illustrate these operators separately. For the tGAP structure, the scale has been depicted as third dimension — the integrated space-scale cube (SSC ) representation (Vermeij et al., 2003; Meijers and van Oosterom, 2011). Figure 2(a) shows this 3D representation for the example scene of Figure 1.
Though many small steps (from most detailed to most coarse representation — in the classic tGAP, n − 1 steps exist, if the base map contains n objects), this could still be considered as many discrete generalization actions approaching vario-scale, but not true vario-scale. Split and merge operations do cause a sudden local ‘shock’: a small scale change results in a not so small geometry change; e. g. leading to complete objects disappearing; see Figure 3. In the space-scale cube this is represented by a horizontal face; a sudden end or start of corresponding object. Furthermore, polygon boundaries define faces that are all vertical in the cube, i. e. the geometry does not change at all within the corresponding scale range (resulting in the collection of fitting prism shapes, a full partition of the space-scale cube).
Figure 1: The 4 map fragments and corresponding tGAP structure
In order to obtain more gradual changes when zooming, i.e. in a morphing style (c. f. Sester and Brenner, 2005; Nöllenburg et al., 2008), we first realised that the line simplification operation could also output non-vertical faces for the space-scale cube and that this has a more true vario-scale character; e. g. when replacing two neighbouring line segments by a single new line segment (omitting the shared node), this can be represented by three triangular faces in the space-scale cube; see Figure 4. Note that both the sudden-change line simplification and the gradual-change line simplification have both 3 faces in the SSC : sudden-change has 2 rectangles and 1 triangle and gradual-change has 3 triangles. When slicing a map (to ‘slice’ means taking a cross-section of the cube) at a certain scale, a delta in scale leads to a derived delta in the map. That is, a small change in the geometry of the depicted map objects and no sudden change any more, as was the case with the horizontal faces parallel with the bottom of the cube, which were the results of the merge or split operations. Note that the more general line simplification (removing more than one node of a polyline) can be considered to consist of several smaller sub-steps: one step for the removal of each of the nodes.
Figure 2: The space-scale cube (SSC ) representation in 3D
Supporting smooth zoom
The split and merge operations can, similar to the gradual line simplification operation as sketched above, be redefined as gradual actions supporting smooth zoom. For example in case of the merge of two objects: one object gradually grows and the other shrinks — in a space-scale cube this corresponds to non-vertical faces (and there is no more need for a horizontal face, i. e. a suddenly disappearing feature); see Figure 2(b). All horizontal faces in the cube are now gone, except the bottom and top faces of the cube. Note that adjacent faces in the same plane belonging to the same object are merged into one larger face, e. g. the big front-right face in Figure 2(b) corresponds to four faces in Figure 2(a). The same is true for the involved edges, several smaller edges on straight lines are merged, and the shared nodes are removed. This can be done because they carry no extra information. Perhaps the most important and elegant consequence is that the merging of the different polyhedral volumes belonging to the same real world object is that also the number of volumes is reduced: there is a one-to-one correspondence between a single object and its smooth tGAP polyhedral representation, valid for all relevant map scales. The benefit of a smaller number of primitives, the nodes, edges, faces and volumes, is that there are also less topology references needed to represent the whole structure. In previous investigations it was reported that the storage requirements for topology structure may be as high, or even higher, than the storage requirements for plain geometry (see previous tests, described in Louwsma et al., 2003; Baars et al., 2004; Penninga, 2004). This is even more true for topology based vario-scale data structures (c. f. Meijers et al., 2009). Lighter structures are more suitable for (progressive) data transfer and high(er) performance.
Figure 3: The map slices of the classic tGAP structure: (b) step 1 (collapse), (c) step 2 (merge) and (d) step 3 (simplify). Note that nothing changes until a true tGAP event has happened.
Figure 5 illustrates the resulting true vario-scale structure: small deltas in scale will give small deltas for map areas. Figure 6 shows that if all slices of the classic tGAP and the smooth tGAP space-scale cubes are compared, the differences and the benefits of the later become clear.
So far, only horizontal slices parallel to the bottom and top of the cube were discussed and used for creating 2D maps. It is not strictly necessary to do parallel slices, nothing prevents taking non-horizontal slices. Figure 7 illustrates a mixed-scale map derived as a non-horizontal slice from the SSC. What does such a non-horizontal slice mean? More detail at side where slice is close to bottom of the cube, less detail at the side where slice is closer to top. Compare to 3D visualizations, where close to the eye of the observer lots of detail is needed, while further away not so much detail. Such a slice leads to a mixed-scale map, as the map contains more generalized features far away (intended for display on small scale) and less generalized features close to observer (large scale).
Figure 4: Line simplification in the SSC : (a) sudden removal of node, (b) gradual change. The dashed lines in (b) only illustrate the difference with the sudden-change variant.
Conclusion and Future work
In this section first the main results of our research are presented and then the paper is concluded with a long list of future work, aiming to resolve the open questions.
1 Main results
This paper has introduced the first true vario-scale structure for geographic information: a delta in scale leads to a delta in the map (and smaller scale deltas lead to smaller map deltas until and including the infinitesimal small delta) for all scales. The smoothness is accomplished by removing all horizontal faces of the classic tGAP structure. The smooth tGAP structure delivers true vario-scale data and can be used for smooth zoom. It is one integrated scale-space partition, and when using non-horizontal slices the resulting 2D maps will be a valid, mixed-scale planar partition: this is useful for use in 3D computer graphics.
Figure 5: The map slices of the smooth tGAP structure: (b) step 1 (collapse), (c) step 2 (merge) and (d) step 3 (simplify). Note the continuous changes, also in between the ‘true’ tGAP events.
2 Open research questions
Although the smooth tGAP structure is a breaktrough vario-scale data structure supporting smooth zoom, there is still a myriad of open research questions:
- Engineering: how to encode the space-scale (hyper) cube in an efficient manner? Also create metrics and collect statistics: how many nodes, edges, faces, and volumes in the space-scale cube (and which primitives and references explicitly stored, c. f. van Oosterom et al., 2002; Meijers et al., 2009).
- Investigate mixed-scale slices that are non-planar; e. g. support for fish-eye type of visualizations (see Figure 8). Should be investigated with respect to the planar partition characteristic of the resulting maps. Probably OK, but it might be true that a single area object, in original data set, might result in multiple parts in the slice (but no overlaps or gaps will occur in the slice). What are useful slicing surface shapes? Folding back surfaces seam to be non-sense as this will give two representations of the same object on same location in one map/visualization.
- Implementation of the smooth tGAP structure takes two main steps: 1. build classic tGAP and 2. transform from classic to smooth tGAP (space-scale cube). The smooth tGAP has the same building challenge as the classic tGAP with respect to applying the right sequence of generalization operators (remove or merge, collapse or split, simplify) to obtain cartographic quality. This has to be well tuned, otherwise the maps will be of (too) low cartographic quality despite the fact that they are perfect in topological sense and 100% consistent between scales. One option for this might be the constrained tGAP (Haunert et al., 2009). It is also clear that this requires ‘understanding’ (semantics) of the different types of object classes involved (and the map needs of the end-users).
Figure 6: The maps – slices of (a) the classic and (b) the smooth tGAP structure – compared
- Further investigating the effects of the Collapse operator in the smooth tGAP structure. After the collapse of an area object to a line (or point) object, the same object lives on. In the SSC this object is then represented by a polyhedral volume to which a vertical surface is connected at the top (in case of collapse to point then in the SSC the polyhedral object is extended with a vertical line). All attributes are attached to the same object, which is represented in the SSC by connected multiple parts of respectively dimension 3 and 2 in case of collapse to line and 1 in case of collapse to point.
- If instead of a 2D base map we start with a 3D base map (model) and then create in a similar manner a 4D space-scale hypercube, then this might be used for good perspective view visualizations by taking non-horizontal scale slices: near a lot of detail (low in scale) far not so much detail (high in scale). The intersection of this 4D hypercube with the hyperplane gives a perfect 3D topology: all representations do fit without gaps or overlaps. This solves a big problem as often the case in the transition from one Level of Detail (LOD) to the next LOD in computer graphics. Interesting ‘implementation’ issues will arise: How can the slicing in the 4D hypercube be done? Is this efficient enough for interactive performance (100 times per second)? The slice is a 3D model and still has to be rendered on a 2D display (or 3D stereo device). Would it be possible to combine the above two steps in a single operation on the 4D hypercube (selection and transformation for display). What steps can be done in hardware and what needs to be done in software?
Figure 7: Checkerboard data as input: each rectangular feature is smoothly merged to a neighbour. Subfigures show: (a) a stack of horizontal slices, (b) taking a non-horizontal slice leads to a ‘mixed- scale’ map and (c) one mixed scale slice (non-horizontal plane).
- Make the structure dynamic: currently the tGAP structure (including the new smooth tGAP) is a static structure. When an update takes place, the structure has to be recomputed. Due to global optimization criteria, the impact of a local change is not guaranteed to have a local effect; e. g. limited to path in structure from changed object to root of structure, perhaps including sibling. Making the structure dynamic also might result in a 5D hypercube (van Oosterom and Stoter, 2010). Again slicing issues arise when we want to create visualizations: slice from 5D to 4D with hyperplane (e. g. select a specific moment in time or alternatively select a specific scale).
Figure 8: A ‘mixed-scale’ map. Harrie et al. term this type of map a ‘vario-scale’ map, while we term this a ‘mixed-scale’ map. Furthermore it is clear that there is a need for extra generalization closer to the borders of the map, which is not applied in (b), but is applied in (c). With our solution, this generalization would be automatically applied by taking the corresponding slice (bell-shaped, curved suface) from the SSC . Illustrations (a) and (b) taken from Harrie et al. (2002) and (c) from Hampe et al. (2004).
The authors would like to thank Dirk de Jong, European Patent Attorney at Vereenigde, for the inspiring questions and discussions during the process of writing the patent claim for the method and system description of true vario-scale maps (patent pending nr. OCNL 2006630).
- Baars, M., Stoter, J., van Oosterom, P., and Verbree, E. (2004). Rule-Based or Explicit Storage of Topology Structure: a Comparison Case Study. In Toppen, F. and Prastacos, P., editors, Proceedings of the 7th Conference on Geographic Information Science (CD-ROM), pages 765–769. Heraclion: Crete University Press.
- Hampe, M., Sester, M., and Harrie, L. (2004). Multiple representation databases to support visualization on mobile devices. In Proceedings of the XXth ISPRS Congress, volume XXXV of International Archives of Photogrammetry, Remote Sensing and Spatial Information Sciences, pages 135–140, Istanbul, Turkey.
- Harrie, L., Sarjakoski, L. T., and Lehto, L. (2002). A variable-scale map for small-display cartography. International Archives of Photogrammetry Remote Sensing and Spatial Information Sciences, 34(4):237–242.
- Haunert, J.-H., Dilo, A., and van Oosterom, P. (2009). Constrained set-up of the tGAP structure for progressive vector data transfer. Computers & Geosciences, 35(11):2191–2203. Progressive Transmission of Spatial Datasets in the Web Environment.
- Louwsma, J., Tijssen, T., and van Oosterom, P. (2003). Topology under the microscope. GeoConnexion.
- Meijers, M. and van Oosterom, P. (2011). The space-scale cube: An integrated model for 2D polygonal areas and scale. Manuscript accepted as short paper at UDMS 2011.
- Meijers, M., van Oosterom, P., and Quak, W. (2009). A storage and transfer efficient data structure for variable scale vector data. In Advances in GIScience, Lecture Notes in Geoinformation and Cartography, pages 345–367. Springer Berlin Heidelberg.
- Noguera, J. M., Segura, R. J., Ogáyar, C. J., and Joan-Arinyo, R. (2010). Navigating large terrains using commodity mobile devices. Computers & Geosciences, In Press, Corrected Proof. Nöllenburg, M., Merrick, D., Wolff, A., and Benkert, M. (2008). Morphing polylines: A step towards continuous generalization. Computers, Environment and Urban Systems, 32(4):248–260. Geographical Information Science Research – United Kingdom.
- Penninga, F. (2004). Oracle 10g Topology; Testing Oracle 10g Topology using cadastral data. Technical report, Delft University of Technology, Delft.
- Sester, M. and Brenner, C. (2005). Continuous generalization for visualization on small mobile devices. In Fisher, P., editor, Developments in Spatial Data Handling, pages 355–368. Springer-Verlag.
- van Kreveld, M. (2001). Smooth generalization for continuous zooming. In Proceedings 20th International Cartographic Conference (ICC’01), pages 2180–2185, Beijing, China.
- van Oosterom, P. (2005). Variable-scale topological data structures suitable for progressive data transfer: The gap-face tree and gap-edge forest. Cartography and Geographic Information Science, 32:331–346.
- van Oosterom, P. and Stoter, J. (2010). 5D data modelling: full integration of 2D/3D space, time and scale dimensions. In Proceedings of the 6th international conference on Geographic information science, GIScience’10, pages 310–324, Berlin, Heidelberg. Springer-Verlag.
- van Oosterom, P., Stoter, J., Quak, W., and Zlatanova, S. (2002). The balance between geometry and topology. In Richardson, D. and van Oosterom, P., editors, Advances in Spatial Data Handling, 10th International Symposium on Spatial Data Handling, pages 121–135, Berlin. Springer-Verlag.
- Vermeij, M., van Oosterom, P., Quak, W., and Tijssen, T. (2003). Storing and using scale-less topological data efficiently in a client-server dbms environment. In GeoComputation 2003, University of Southampton, Southampton, UK.