# Geometric data structures for computer graphics: an overview

• Mark H. Overmars
Conference paper
Part of the NATO ASI Series book series (volume 40)

## Abstract

In computational geometry many sophisticated data structures have been designed for storing geometric objects. Many of these structures might be very useful for solving a number of problems in computer graphics and, hence, it is important that people in computer graphics know these data structures. In this paper we discuss a number of such geometric data structures and indicate their advantages and uses, especially in computer graphics. The structures we consider are:
• The quad-tree is probably the most well-known data structure in computer graphics. Quad-trees can be used to store planar objects, both in image space and in object space. They use little storage and often allow for fast retrieval of geometric information.

• Range trees are a clear example of so-called multi-dimensional data structures. They allow for very fast searching to locate e.g. the points in a set lying in a given rectangle.

• Segment trees store intervals in an efficient way. They can be used for solving problems concerning e.g. line segments.

• Many geometric data structures are static, i.e., they don’t allow for insertions and deletions of objects. Some general dynamisation techniques will be discussed that can be used for turning static data structures into dynamic structures. With the description of the different data structures examples are given to show how the structures can be used for solving actual geometric problems. For example we will show how the segment tree can be used to solve the windowing problem efficiently.

With the description of the different data structures examples are given to show how the structures can be used for solving actual geometric problems. For example we will show how the segment tree can be used to solve the windowing problem efficiently.

Hull

## Preview

### References

1. [1]
Bentley, J.L., Multidimensional binary search trees used for associated searching, C. ACM 18 (1975), 509–517.
2. [2]
Bentley, J.L., Multidimensional binary search trees in database applications, IEEE Trans. on Software Eng. SE-5 (1979), 333–340.Google Scholar
3. [3]
Bentley, J.L., Decomposable searching problems, Inform. Proc. Lett. 8 (1979), 244–251.
4. [4]
Bentley, J.L., and J.H. Friedman, Data structures for range searching, ACM Comput. Surveys 11 (1979), 397–409.
5. [5]
Bentley, J.L., and H.A. Maurer, Efficient worst-case data structures for range searching, Acta Inform. 13 (1980), 155–168.
6. [6]
Bentley, J.L., and J.B. Saxe, Decomposable searching problems I: static to dynamic transformations, J. Algorithms 1 (1980), 301–358.
7. [7]
Bentley, J.L. and D.F. Stanat, Analysis of range searches in quad-trees, Inform Proc. Lett. 3 (1975), 170–173.
8. [8]
Bentley, J.L., and D. Wood, An optimal algorithm for reporting intersections of rectangles, IEEE Trans. on Computers C-29 (1980), 571–577.
9. [9]
Edelsbrunner, H., A note on dynamic range searching, Bull of the EATCS 15 (1981), 34–40.Google Scholar
10. [10]
Edelsbrunner, H., Intersection problems in computational geometry ,Techn. Rep. F93, Inst. f. Information Processing, TU Graz, 1982.Google Scholar
11. [11]
Edelsbrunner, H., and J. van Leeuwen, Multidimensional data structures and algorithms: a bibliography ,Techn. Rep. F105, Inst. f. Information Processing, TU Graz, 1982.Google Scholar
12. [12]
Finkel, R.A., and J.L. Bentley, Quad-trees; a data structure for retrieval on composite keys, Acta Inform. 4 (1974), 1–9.
13. [13]
Kersten, M.L., and P. van Emde Boas, Local optimizations of quad-trees ,Techn. Rep. IR-51, Free University Amsterdam, 1979.Google Scholar
14. [14]
Lueker, G.S., A data structure for orthogonal range queries, Proc. 19th IEEE Symp. on Foundations of Computer Science ,1978, 28–34.Google Scholar
15. [15]
McCreight, E.M., Priority search trees, SIAM J. Computing 14 (1985), 257–276.
16. [16]
Mehlhorn, K., Data structures and algorithms 3: Multi-dimensional searching and computational geometry ,Springer-Verlag, Berlin, 1984.
17. [17]
Overmars, M.H., The design of dynamic data structures ,Lect. Notes in Computer Science 156, Springer-Verlag, 1983.Google Scholar
18. [18]
Overmars, M.H., Range searching in a set of line segments, Proc. 1st ACM Symp. on Computational Geometry ,1985, 177–185.Google Scholar
19. [19]
Overmars, M.H., Geometric data structures for computer graphics, in: R.A. Earnshaw (ed.), Fundamental algorithms for computer graphics ,NATO ASI Series F Vol 17, Springer-Verlag, Berlin, 1985, 919–931.
20. [20]
Overmars, M.H., Dynamization of order decomposable set problems, J. Algorithms 2 (1981), 245–260.
21. [21]
Overmars, M.H., and J. van Leeuwen, Dynamic multi-dimensional data structures based on quad-and k-d trees, Acta Inform. 17 (1982), 267–285.
22. [22]
Preparata, F.P., and M.I. Shamos, Computational geometry ,Springer-Verlag, New York, 1985.Google Scholar
23. [23]
Rogers, D.F., Procedural elements for computer graphics ,McGraw-Hill, New York, 1985.Google Scholar
24. [24]
Samet, H., Deletion in two dimensional quad trees, C. ACM23 (1980), 703–10.Google Scholar
25. [25]
Samet, H., Bibliography on quadtrees and related hierarchical data structures, in: L. Kessenaar, F. Peters and M. van Lierop (Ed.), Data structures for raster graphics ,Springer-Verlag, Berlin, 1986, 181–201.
26. [26]
Samet, H., C.A. Shaffer and R.E. Webber, Using linear quadtrees to store vector data, in: L. Kessenaar, F. Peters and M. van Lierop (Ed.), Data structures for raster graphics ,Springer-Verlag, Berlin, 1986, 91–123.
27. [27]
Scholten, H.W., and M.H. Overmars, Genereal methods for adding range restrictions to decomposable searching problems ,Techn. Rep. RUU-CS-85-21, Dept. of Comp. Science, University of Utrecht, 1985.Google Scholar
28. [28]
Silva-Filho, Y.V., Average case analysis of region search in balanced k-d trees, Inform. Proc. Lett. 8 (1979), 219–223.
29. [29]
Warnock, J.E., A hidden line algorithm for halftone picture representation ,Techn. Rep. 4–5, Computer Science Dept., University of Utah, 1968.Google Scholar
30. [30]
Warnock, J.E., A hidden-surface algorithm for computer generated halftone pictures ,Techn. Rep. 4–15, Computer Science Dept., University of Utah, 1969.Google Scholar
31. [31]
Willard, D.E., Predicate-oriented database search algorithms ,Garland Publishing Company, New York, 1979.Google Scholar
32. [32]
Willard, D.E., New data structures for orthogonal range queries, SIAM J. Computing 14 (1985), 232–253.
33. [33]
Willard, D.E., and G.S. Lueker, Adding range restriction capability to dynamic data structures, J. ACM 32 (1985), 597–617.