Geometric Data Structures for Computer Graphics ................................................................ 1
Preface ....................................................................................................................................... 6
Overview ..................................................................................................................................... 6
Acknowledgments ....................................................................................................................... 7
Chapter 1: Quadtrees and Octrees ............................................................................................ 8
1.1. Definition .............................................................................................................................. 8
1.2. Complexity and Construction ............................................................................................... 8
1.3. Height Field Visualization .................................................................................................... 9
1.4. Isosurface Generation ......................................................................................................... 12
1.5. Ray Shooting ...................................................................................................................... 14
1.6. 3D Octree ............................................................................................................................ 15
1.7. 5D Octree ............................................................................................................................ 17
Chapter 2: Orthogonal Windowing and Stabbing Queries ................................................... 20
Overview ................................................................................................................................... 20
2.1. Interval Trees ...................................................................................................................... 20
2.2. Segment Trees .................................................................................................................... 23
2.3. Multi-Level Segment Trees ................................................................................................ 27
2.4. Kd-Trees ............................................................................................................................. 30
2.5. Range Trees ........................................................................................................................ 33
2.6. The (Axis-Parallel Box/Axis-Parallel Box) Windowing Problem ..................................... 36
2.7. Texture Synthesis ............................................................................................................... 38
2.8. Shape Matching .................................................................................................................. 40
Bibliography ................................................................................................................................. 52
Chapter 3: BSP Trees ................................................................................................................ 67
Overview ................................................................................................................................... 67
3.1. Rendering without a Z-Buffer ............................................................................................ 68
3.2. Representing Objects with BSPs ........................................................................................ 69
3.3. Boolean Operations ............................................................................................................ 69
3.4. Construction Heuristics ...................................................................................................... 72
3.4.1. Convex Objects ........................................................................................................... 72
3.4.2. Cost-Driven Heuristic .................................................................................................. 73
3.4.3. Non-Uniform Queries .................................................................................................. 73
3.4.4. Deferred, Self-Organizing BSPs.................................................................................. 74
Chapter 4: Bounding Volume Hierarchies .............................................................................. 76
Overview ................................................................................................................................... 76
4.1. Construction of BVHs ........................................................................................................ 79
4.1.1. Construction Criteria ................................................................................................... 80
4.1.2. The Criterion for Collision Detection .......................................................................... 81
4.1.3. Construction Algorithm ............................................................................................... 83
4.2. Updating for Morphing Objects ......................................................................................... 84
4.3. Collision Detection ............................................................................................................. 85
4.3.1. Stochastic Collision Detection .................................................................................... 86
Chapter 5: Distance Fields ........................................................................................................ 90
Overview ................................................................................................................................... 90
5.1. Computation and Representation of DFs ........................................................................... 91
5.1.1. Propagation Method .................................................................................................... 92
5.1.2. Projection of Distance Functions ................................................................................. 93
5.2. Applications of DFs ............................................................................................................ 94
5.2.1. Morphing ..................................................................................................................... 94
5.2.2. Modeling ...................................................................................................................... 95
Chapter 6: Voronoi Diagrams ................................................................................................... 97
Overview ................................................................................................................................... 97