Abstract
Shape and location of objects in a spatial database are commonly represented by geometric data such as points, lines and regions. Numerous geometric operators and predicates have been proposed for spatial database systems. Existing work on their implementation concentrate on individual operators and predicates. This approach makes the realization of geometric operators and predicates in a spatial database system difficult since they are diverse and their implementation are complex. In this paper, we present a plane-sweep algorithm that can be easily modified to realize efficiently a set of frequently used line-region and region-region geometric operators and predicates. The design of this unified algorithm is based on the observation that the covering of elementary regions along the sweep line are updated locally and the implementation of these operators and predicates differ only with the output actions at an intersection point. Any geometric operator or predicate, the output of which can be determined by examining incident edges and covering information at intersection points, can be implemented easily with the algorithm. To demonstrate its generality, extendibility and efficiency, we concentrate on several popular geometric operators and predicates. All these operators and predicates can be realized in O((N+I) log N) time in the worst case, where N is the number of edges in the operands and I is the number of intersecting pairs. The proposed algorithm has been fully implemented and tested in C++ on a Sun workstation. Although the paper focuses on operators and predicates involving at most two regions, this algorithm can be generalized nicely to r regions, where r>2. We describe what changes are needed to make to the basic algorithm to accommodate this generalization.
Preview
Unable to display preview. Download preview PDF.
References
Benouamer, M.O., Jaillon, P., Michelucci, D. and Moreau, J.M., “A Lazy Solution to Imprecision in Computational Geometry,” Proceedings of the Fifth Canadian Conference on Computational Geometry, 1993, pp. 73–78.
Bentley, J.L. and Ottmann, T.A., “Algorithms for Reporting and Counting Geometric Intersections,” IEEE Transactions on Computer, Vol. c-28 (1979), pp. 643–647.
Chan, E.P.F. and Zhu, R., “QL/G: A Query Language for Geometric Databases,” Proceedings of the First International Conference on GIS in Urban and Environmental Planning, Island of Samos, Greece, April 1996, pp. 271–286.
Chazelle. B. and Edelsbrunner, H., “An Optimal Algorithm for Intersecting Line Segments in the Plane,” JACM 39:1, January 1992, pp. 1–54.
DeWitt, D., Kabra, N., Luo, J., Patel, J.M., Yu, J.B., “Client-Server Paradise,” Proceedings of the 20th International Conference on VLDB, Santiago, Chile, 1994.
Fortune, S. and Van Wyk, C. “Efficient Exact Arithmetic for Computational Geometry,” Proceedings of the Ninth ACM Symposium on Computational Geometry, San Diego, May 1993, pp. 163–172.
Green, D.H. and Yao, F.F., “Finite-resolution Computational Geometry,” Proceedings of the 27th Annual Symposium on the Foundation of Computer Science, pp. 143–152, 1986.
Guibas, L., Salesin, D., and Stolfi, J., “Epsilon Geometry: Building Robust Algorithms from Imprecise Computations,” Proceedings of the Fifth ACM Symposium on Computational Geometry, San Diego, 1989, pp. 208–217.
Guting, R.H. and Schneider, M., “Realms-Based Spatial Data Types: The ROSE Algebra,” VLDB Journal 4(2), April 1995, pp. 243–286.
Guting, R.H., Ridder, T. and Schneider, M., “Implementation of ROSE Algebra: Efficient Algorithms for Realm-Based Spatial Data Types,” Proceedings of Advances in Spatial Databases — Fourth International Symposium, SSD '95, pp. 216–239, Portland, Maine, August 1995. Lecture Notes in Computer Science 951. Springer-Verlag.
Kriegel, H., Brinkhoff, T. and Schneider, R., “An Efficient Map Overlay Algorithm Based on Spatial Access Methods and Computational Geometry” Proceedings of the International Workshop on DBMS's for Geographic Applications, Capri, May 12–17, 1991.
Myers, E.W., “An O(E log E+I) Expected Time Algorithm for the Planar Segment Intersection Problem,” SIAM J. of Computing, Vol. 14 (1985), pp. 625–637.
Milenkovic, V.J., “Double Precision Geometry: A General Technique for Calculating Line and Segment Intersections Using Rounded Arithmetic,” Proceedings of the Thirtieth Annual Symposium on the Foundations of Computer Science, 1989, pp. 500–505.
Milenkovic, V.J. and Li, Z., “Constructing Strongly Convex Hulls Using Exact or Rounded Arithmetic,” Algorithmica (8), 1992, pp. 345–364.
Naher, S., LEDA Manual Version 3.2, TR MPI-I-95-1-002, Max-Planck-Institut fur Informatik, Saarbrucken, 1995.
Mehlhorn, K. and Naher, S. “Implementation of a Sweep Line Algorithm for the Straight Line Segment Intersection Problem,” TR MPI-I-94-105, Max-Planck-Institut fur Informatik, Saarbrucken, 1993.
Mehlhorn, K. and Naher, S. “LEDA, A Platform for Combinatorial and Geometric Computing,” CACM (38), Number 1995, pp. 96–102.
Nievergelt, J. and Preparata, F.P., “Plane-Sweep Algorithms for Intersecting Geometric Figures,” CACM (25), Number 10, 1982, pp. 739–747.
Ottmann, G., Thiemt, G. and Ullrich, C, “Numerical Stability of Geometric Algorithms,” Proceedings of the Third ACM Symposium on Computational Geometry, 1987, pp. 119–125.
Ottmann, T.A., Widmayer, P. and Wood, D. “A Fast Algorithm for the Boolean Masking Problem,” Computer Vision, Graphics, and Image Processing (1985), pp. 249–268.
Scholl, M. and Voisard, A., “Thematic Map Modelling,” Proceedings of the 1st Symposium, SSD 89, Santa Barbara, CA., July 1989, pp. 167–190. Lecture Notes in Computer Science 409, Springer-Verlag, 1989.
Shamos, M.I. and Hoey, D., “Geometric Intersection Problems,” Proc. 17th ACM Symposium on Foundations of Computer Science (1976), pp. 208–215.
Tilove, R.B., “Set Membership Classification: A Unified Approach to Geometric Intersection Problems”, IEEE Transaction on Computers, Vol. C-29, No. 10, 1980, pp. 874–883.
XYZ GeoBench User Manual, ETH Zurich, Switzerland, 1994.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chan, E.P.F., Ng, J.N.H. (1997). A general and efficient implementation of geometric operators and predicates. In: Scholl, M., Voisard, A. (eds) Advances in Spatial Databases. SSD 1997. Lecture Notes in Computer Science, vol 1262. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63238-7_25
Download citation
DOI: https://doi.org/10.1007/3-540-63238-7_25
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63238-2
Online ISBN: 978-3-540-69240-9
eBook Packages: Springer Book Archive