Storing And Using Multi-Scale Topological Data Efficiently In A Client-Server DBMS Environment

Similar documents
Storing and using scale-less topological data efficiently in a clientserver DBMS environment

Computational Geometry Algorithms Library. Geographic information Systems

Implementation and testing of variable scale topological data structures

Topology versus non-topology storage structures Functional analysis and performance test using LaserScan Radius Topology

Using the constrained tgap for generalisation of IMGeo to Top10NL model

Topology in spatial DBMSs

Topological and temporal modelling in GML

Multidimensional Data and Modelling - DBMS

City-Modeling. Detecting and Reconstructing Buildings from Aerial Images and LIDAR Data

Maps as Numbers: Data Models

CONSTRUCTION OF THE 3DTOP10 INTEGRATION OF COUNTRYWIDE PLANIMETRIC DATA AND LASERALTIMETRY DATA TO SUPPORT 3D-VISUALISATION AND ANALYSES

Graphic Display of Vector Object

An Introduction to Spatial Databases

Algorithms for GIS. Spatial data: Models and representation (part I) Laura Toma. Bowdoin College

Multidimensional (spatial) Data and Modelling (2)

Algorithms for GIS csci3225

VECTOR ANALYSIS: QUERIES, MEASUREMENTS & TRANSFORMATIONS

Terms and definitions * keep definitions of processes and terms that may be useful for tests, assignments

Object modeling and geodatabases. GEOG 419: Advanced GIS

Registration of 3D Spatial Objects for 3D Cadastre

Lecture 6: GIS Spatial Analysis. GE 118: INTRODUCTION TO GIS Engr. Meriam M. Santillan Caraga State University

Towards a 3D cadastre: where do cadastral needs and technical possibilities meet?

GEOGRAPHIC INFORMATION SYSTEMS Lecture 17: Geoprocessing and Spatial Analysis

Semi-Automatic Approach for Building Reconstruction Using SPLIT-MERGE-SHAPE Method

GEOSPATIAL ENGINEERING COMPETENCIES. Geographic Information Science

Introduction to Spatial Database Systems. Outline

DEVELOPING A NEW GEOGRAPHICAL OBJECT DATABASE. EXPERIENCES FROM IDEA TO DELIVERING DATASETS TOP10NL

A CONSISTENCY MAINTENANCE OF SHARED BOUNDARY AFTER POLYGON GENERALIZATION

Height in the Cadastre Integrating Point Heights and Parcel Boundaries

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

RGI 233 WP4 SILVERLIGHT TGAPVIEWER

AN ITERATIVE ALGORITHM FOR MATCHING TWO ROAD NETWORK DATA SETS INTRODUCTION

Maps as Numbers: Data Models

PLATE TECTONICS DATA VIEWER Developed by Claudia Owen and Eric Sproles

Introduction to Geodatabase and Spatial Management in ArcGIS. Craig Gillgrass Esri

Multidimensional Data and Modelling - Operations

DEVELOPING A THREE-DIMENSIONAL TOPOLOGICAL DATA MODEL

Partition and Conquer: Improving WEA-Based Coastline Generalisation. Sheng Zhou

Proceedings of the 6 th AGILE Dates Lieu MODELLING 3D SPATIAL OBJECTS IN A GEO-DBMS USING A 3D PRIMITIVE

Announcements. Data Sources a list of data files and their sources, an example of what I am looking for:

LSGI 521: Principles of GIS. Lecture 5: Spatial Data Management in GIS. Dr. Bo Wu

CMPUT 391 Database Management Systems. Spatial Data Management. University of Alberta 1. Dr. Jörg Sander, 2006 CMPUT 391 Database Management Systems

Generalization of Spatial Data for Web Presentation

Geometric and Thematic Integration of Spatial Data into Maps

Spatial Data Management

Advances in 3D GIS. Siyka Zlatanova Section GISt, Delft University of Technology, The Netherlands

Lecture 8. Vector Data Analyses. Tomislav Sapic GIS Technologist Faculty of Natural Resources Management Lakehead University

5 MANAGING AND MODELLING OF 3D SPATIAL OBJECTS FOR URBAN ENVIROMENT

M. Andrea Rodríguez-Tastets. I Semester 2008

Spatial Data Management

Continuous Road Network Generalization throughout All Scales

MAP-OVERLAY WITHIN A GEOGRAPHIC INTERACTION LANGUAGE

Contour Simplification with Defined Spatial Accuracy

GIS Basics for Urban Studies

COMPARISON OF TWO METHODS FOR DERIVING SKELETON LINES OF TERRAIN

Class #2. Data Models: maps as models of reality, geographical and attribute measurement & vector and raster (and other) data structures

Lecturer 2: Spatial Concepts and Data Models

4.0 DIGITIZATION, EDITING AND STRUCTURING OF MAP DATA

Keywords: 3D-GIS, R-Tree, Progressive Data Transfer.

Principles of Data Management. Lecture #14 (Spatial Data Management)

Universiteit Leiden Computer Science

MODELLING AND MANAGING 3D SPATIAL OBJECTS. Siti Nur Awanis Mohamad Zulkifli and Alias Abdul Rahman

file:///c:/users/c_harmak/appdata/local/temp/arc8f36/tmp308d.tmp.htm

PROGRESSIVE TRANSMISSION OF VECTOR MAP ON THE WEB

What s New in TerraExplorer Suite 5.0

History in Spatial Databases

SPATIAL DATA STORAGE AND TOPOLOGY IN THE REDESIGNED MAF/TIGER SYSTEM

U.S. Census Bureau Spatial Data Storage and Topology in the Redesigned MAF/TIGER System Jennifer DeVore and Danielle Lessard March 10, 2005

Automatically repairing polygons and planar partitions with prepair and pprepair

Streamlining Editing Workflows. Amber Bethell

Overview of CCSD Secure Cropper Map

MSc Geomatics thesis presentation. Validation and automatic repair of planar partitions using a constrained triangulation.

3D TOPOLOGY FOR MODELLING OF URBAN STRUCTURES

TatukGIS Editor. Introduction

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

Representing Geography

Integrating 3D-GIS and Virtual Reality Design and implementation of the Karma VI system

Lecture 1: September 6, 2001

Introduction to Spatial Database Systems

GY461 Computer Mapping & GIS Technology Lost Creek Mine GIS Project

NATIONWIDE POINT CLOUDS AND 3D GEO- INFORMATION: CREATION AND MAINTENANCE GEORGE VOSSELMAN

GIS Data Models. 4/9/ GIS Data Models

Course Content. Objectives of Lecture? CMPUT 391: Spatial Data Management Dr. Jörg Sander & Dr. Osmar R. Zaïane. University of Alberta

Overview. Image Geometric Correction. LA502 Special Studies Remote Sensing. Why Geometric Correction?

9. Three Dimensional Object Representations

3D Cadastre: Progress Report. Jantien Stoter

Spatial Data Models. Raster uses individual cells in a matrix, or grid, format to represent real world entities

Geographical Information Systems Institute. Center for Geographic Analysis, Harvard University. LAB EXERCISE 1: Basic Mapping in ArcMap

Elec_ISO_RTO_Regions

How to create a simple CommonGIS application file

Computational Geometry for Imprecise Data

3D SPATIAL OPERATIONS FOR GEO-DBMS: GEOMETRY VS. TOPOLOGY

PART 1. Answers module 6: 'Transformations'

GEOGRAPHIC INFORMATION SYSTEMS Lecture 25: 3D Analyst

Data Model and Management

VISUALIZATION OF GEOINFORMATION IN DAM DEFORMATION MONITORING

Introduction to GIS 2011

LECTURE 2 SPATIAL DATA MODELS

THE METHODS OF TRIANGULATION

A Taxonomy of Spatial Units in a Mixed 2D and 3D Cadastral Database

Transcription:

Storing And Using Multi-Scale Topological Data Efficiently In A Client-Server DBMS Environment MAARTEN VERMEIJ, PETER VAN OOSTEROM, WILKO QUAK AND THEO TIJSSEN. Faculty of Civil Engineering and Geosciences, Department of Geodesy, section GIS Technology, P.O. Box 5030, 2600 GA Delft, The Netherlands. Tel +31 15 2783756; Fax +31 15 2782745; Email: quak@geo.tudelft.nl Biography Maarten Vermeij is a master's student at the Delft University doing his final project on the storage and retrieval of scale-less maps. Professor van Oosterom is the leader of the section GISt, that carries out research and provides services in the field of technological aspects of geographic information systems. (Note: The procedure presented here is still under development and has not yet been fully implemented and tested. Implementation and testing should be finished before the full paper is due.) Introduction When working with a large-scale dataset interactively, a user often zooms out to get an overview of the map. The result of this is often that all map details of that big part of the data are retrieved from the database and drawn on the screen. In many cases this is not wanted; the user is only interested in an overview map, and too much data is transferred from the client to the server. This will especially be a problem if the client is connected to the server over a small bandwidth connection. The solution to this problem is to perform generalization at the server side to reduce the amount of data that has to be sent to the client. However generalization is a computational intensive task, which would put a great strain on the server if generalization needs to be calculated separately for every request. It is necessary to be able to store generalization information in such a way that generalized datasets can easily be retrieved at a range of levels of detail (l.o.d.'s). The procedure uses a data structure to efficiently store geometric and thematic information with additional information for the creation of generalized data sets. The use of this data structure requires some dedicated procedures at both server- and client side. Both are discussed in this article. Also the server-side routines for the creation of the generalization data are discussed. The procedure is tested with a large-scale dataset. The article ends with conclusions on the presented procedure. In this paper, a procedure has been developed that allows the on the fly creation of a generalized map.

Data structure The procedure uses a topological description of a planar partition using faces and their bounding edges. However, the geometric shape of the faces is not stored explicitly, but is to be reconstructed out of the appropriate edges at the client side. Generalization is achieved by omitting certain edges at smaller scale, or zoomed out, maps. Since edges represent the boundaries of faces, a reduction in the number of edges will result in larger faces. To enable the appropriate edges to be selected for map visualization at a certain level of detail, each edge record will contain, besides it s 2D geometric representation, a scale factor. An appropriate choice for this scale factor is the reciprocal value of the scale at which the edge should be removed from the map. E.g. if an edge should be visible in maps with a scale of 1:20,000 and larger, the scale factor would be 20,000. The term scale in on screen cartography does not correspond directly with the term scale as used on paper maps, but it nevertheless can give a useful indication for the amount of generalization required. If a generalized map view is requested, the edges with a scale factor that is equal to, or larger then the requested scale factor, are to be retrieved from the database. These edges will enable the client to provide a visual partition at the required scale, however this does not contain any thematic information. The thematic information is stored in a separate table that contains face descriptions. As with the edges these faces are only visible on certain l.o.d. s. This is accomplished by adding to each face a scale range, which indicates at which l.o.d s. or scales, a face should be present in the map display. In contrast to the edges, faces have an upper and a lower scale limitation, which allows the selection of only those faces that are present at a certain scale since large faces are replaced by a number of smaller ones at larger scales. To identify which polygon, created at client side, corresponds to which face, each face record contains a centroid, which is a point that lies within the geometric boundary of the face. Figure 1 shows the composition of a generalized map using the appropriate edges and centroids.

Map with generalization information(original level of detail, 1:10,000) Generalized map for scale 1:45,000 25k 11k 11k LEGEND ScaleFactor value corresponding to edge Calculated node Face centroid (only centroids valid for the given level of detail are shown) Figure 1: Example of generalization using the ScaleFactor value stored in the edges. Representation within a database The edges and faces of the data structure are stored using a spatial DBMS. In the research an Oracle 9i Spatial database is used, but others should also be possible. The Oracle DBMS allows the use of indices on more then 2 dimensions. This feature can be exploited by using the above-described scale factor as the third dimension. The consequence of this choice, is that the request for a generalized map can be transformed into a 3D spatial query. A generalized map is then created by requesting all edges that lie within, or intersect a 3D box, with the x,y extent equal to the query window, which is the area to be represented at the client, and the z extent from the maximum scale level down to the requested scale level. At the edges of the query window a problem arises, in the form that at those places not all lines enclosing a polygon are returned. This poses a problem since it is then not possible to ensure that the polygons that are created contain the centroid of the face it represents and thus can not be assigned a plane. To overcome this problem, first the face table needs to be queried. The selection of the faces works somewhat different. All faces are selected of which the 3D bounding box intersects a face, with x-,y extent equal to the query window and a z- value equal to the scale level. All the edges that are necessary to completely reconstruct

these faces are present within the union of the bounding boxes of all these faces. Since this union might have a very irregular shape, which would have a great impact on the actual spatial query, it might by useful to use the bounding box of this union as a new query window. The query for all necessary edges would proceed as described above, but using the extended bounding box. The following database tables are used to store the Scale-less map: TABLE: EDGES Column Type/description Oid Geometry Bbox ScaleFactor Integer, to uniquely identify an edge 2D Geometric, description of an edge Flat 3DBounding Box, constructed using the 2D bounding box of an edge and the Scale Factor as the z-coordinate. Float, the reciprocal value of the largest scale at which an edge is to be displayed. TABLE: FACES Column Oid Bbox Centroid ThematicInfo ScaleRange Type/description Integer, to uniquely identify a face. 3DBounding Box, constructed using the 2D bounding box of a face and the ScaleRange for the third dimension. 2D Point, that lies within the exact shape of the face. Anything that is to be stored about the face. Array of Float[2]. Upper and lower Scale Factor to indicate scales at which the face is visible. Creation of generalization information The procedure was developed to allow the on-the-fly creation of generalized maps at a range of scales. In this situation it is important that computational intensive procedures are not necessary at query time, at least not at the server side. It is therefore important that the generalization information is calculated and stored before hand. The data structure described above supports this. What remains is the creation of this generalization data. The procedure used in the research follows closely the procedures used in the GAP-tree method (Oosterom, 1993), although it is expected that the data structure and query-time part of procedure, should be able to handle other generalization methods as well. The generalization method used, starts with selecting the least important face within a map. The selection of this face is based upon an importance value, calculated for example by: Importance=priority*Area; whereby priority is a value related to the type of face, e.g. road, building or water. The least important face is aggregated

with one of it neighbors. The appropriate neighbor is selected using the following formula as a criterium: Collapse(a,b) = compatibility(a,b) * LengthCommonBoundary(a,b). The neighbor with the highest value for this function is selected for aggregation. The aggregation it self is performed by deleting the common boundary of the two neighboring faces. This boundary is represented by edge in the database. Although the boundary is deleted from the map it is not removed from the database. Instead the ScaleFactor column in the edge s record is set to a value relevant to the generalization level at the moment of it s removal from the map. Furthermore the upper limit of the ScaleRange of the aggregating faces is set to that value. Also a new face is created with the lower ScaleRange value set to the actual ScaleFactor and a valid value for the centroid. At this moment it is possible to supply the new face record with relevant thematic information, which could for example be based upon information of the two aggregated faces. Testing The entire procedure, including creation of generalization information client- and server side processing is tested using the scale 1:10000 large scale vector maps (TDN, 1998) from the Dutch Topographic Service (TDN) in the form of the TOP10Vector data. Testing will comprise timings, data amounts, both at server- and client side and during transfer, as well as other relevant factors. References TDN (1998) Productbeschrijving TOP10vector, Topografische Dienst Nederland, September, 1998 Peter van Oosterom (1993) The GAP-tree, an approach to On-the-Fly Map Generalization of an Area Partitioning, P.van Oosterom (1990) Reactive Data Structures for Geographic Information Systems, TNO Physics and Electronics Laboratory, Leiden Putten, J. van and Oosterom, P. van (1998) New results with Generalized Area PartitioningsSDH'98, Vancouver Canada