Implementation of the ROSE Algebra : Efficient Algorithms for Realm Based Spatial Data Types
The ROSE algebra, defined earlier, is a system of spatial data types for use in spatial database systems. It offers data types to represent points, lines, and regions in the plane together with a comprehensive set of operations; semantics of types and operations have been formally defined. Values of these data types have a quite general structure, e.g. an object of type regions may consist of several polygons with holes. All ROSE objects are realm-based which means all points and vertices of objects lie on an integer grid and no two distinct line segments of any two objects intersect in their interior. In this paper we describe the implementation of the ROSE algebra, providing data structures for the types and new realm-based geometric algorithms for the operations. The main techniques used are (parallel) traversal of objects, plane-sweep, and graph algorithms. All algorithms are analyzed with respect to their worst case time and space requirements. Due to the realm properties, these algorithms are relatively simple, efficient, and numerically completely robust. All data structures and algorithms have indeed been implemented in the ROSE system; the Modula-2 source code is freely available from the authors for study or use.
Nutzung und Vervielfältigung:
Alle Rechte vorbehalten