Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DeBerg_-_Computational_Geometry_-_Algorithms_and_Applications_2e.pdf
Скачиваний:
50
Добавлен:
11.03.2016
Размер:
3 Mб
Скачать

Index

1DRANGEQUERY, 97

lower bound, 269

 

 

2DRANGEQUERY, 108

automated manufacturing, 63, 89

 

 

2d-tree, 100

autonomous robot, 283

 

 

2DBOUNDEDLP, 75

average running time, 78

 

 

2DBSP, 264

axis-parallel line segment, 220

 

 

2DRANDOMBSP, 264

 

 

 

2DRANDOMIZEDBOUNDEDLP, 77

backwards analysis, 78, 85, 89, 134,

 

 

2DRANDOMIZEDLP, 81

140, 205, 250

 

 

3-coloring

balanced quadtree, 313

 

 

of triangulated polygon, 47, 59

BALANCEQUADTREE, 313

 

 

3DBSP, 267

ball

 

 

3DRANDOMBSP2, 268

smallest enclosing, 90

 

 

 

beach line, 152, 160

 

 

abstract Voronoi diagram, 169

binary search tree, 96

 

 

adjacency

binary space partition, 259, 261

 

 

of trapezoids, 127

for low-density scene, 271

 

 

algorithm

lower bound, 270

 

 

randomized, 78

binary space partition tree, 261

 

 

angle

Boolean operation

 

 

of vectors in 3-space, 64

on polygons, 39

 

 

angle-optimal, 194

bounded linear program, 73

 

 

angle-vector, 194

bounding box, 58, 124, 155, 231

 

 

annulus, 163

breakpoint, 152, 161

 

 

smallest-width, 163

BSP, 261

 

 

approximate cell decomposition, 303,

for low-density scene, 271

 

 

305

lower bound, 270

 

 

approximate range searching, 353

BSP tree, 261

 

 

approximation, 244

BUILD2DRANGETREE, 107

 

 

arm

BUILDKDTREE, 100

 

 

robot, 86

 

 

 

arrangement, 180, 187

C-obstacle, 285

 

 

complexity of, 180

for translating robot, 291

 

 

in higher dimensions, 187

CAD/CAM, 12, 15, 63, 307

 

 

point location in, 143

canonical subset, 106, 109, 233, 339,

 

 

simple, 180

341

 

 

Art Gallery Problem, 45, 59

car-like robot, 284

 

 

Art Gallery Theorem, 48

castable, 64

 

 

aspect ratio, 319

casting, 63

 

 

associated structure, 106, 222, 225, 235,

cell decomposition

 

 

344, 350

approximate, 303, 305

 

 

377

auto-partition, 262

exact, 303

 

INDEX

chain method

dynamic, 13

 

 

point location by, 143

Graham’s scan, 13

 

 

circle event, 155, 161

Jarvis’s march, 13

 

 

false alarm, 156

lower bound, 13

 

 

closest pair, 170

pseudo code, 3, 6, 249

 

 

collision, 286

convex polytope, 244

 

 

collision detection, 244

point location in, 144

 

 

coloring

convex set, 2

 

 

of triangulated polygon, 47, 59

CONVEXHULL, 6, 249

 

 

combinatorial optimization, 90

corner vertex, 310

 

 

combined metric, 332

cutting, 347, 352

 

 

common intersection

cutting tree, 346

 

 

of half-planes, 66, 89

cyclic overlap, 260

 

 

composite number, 111

data structure, 219

 

 

composite-number space, 111

 

 

compressed quadtree, 318

1-dimensional range tree, 99

 

 

COMPUTEFREESPACE, 287

binary search tree, 96

 

 

COMPUTEPATH, 289

BSP tree, 261

 

 

computer aided design, 12, 15, 63, 307

cutting tree, 346

 

 

computer aided manufacturing, 12, 15,

for point location, 128

 

 

63, 89

heap, 227

 

 

computer animation, 244

interval tree, 220, 222, 237

 

 

computer graphics, 10, 14, 175, 188

kd-tree, 100

 

 

configuration of robot, 284

multi-level, 343

 

 

configuration space, 285, 330

octree, 318

 

 

forbidden, 285

partition tree, 336, 338

 

 

free, 285, 324, 330

priority search tree, 226, 237

 

 

of randomized algorithm, 209

quadtree, 115, 307, 309

 

 

of translating polygon, 291

range tree, 105, 109

 

 

configuration-space obstacle, 285, 330

segment tree, 231, 233, 237

 

 

for translating polygon, 291

database, 95, 116, 335

 

 

for translating robot, 291

database query, 95

 

 

conflict, 248

Davenport-Schinzel sequence, 188

 

 

conflict graph, 248

decomposable searching problem, 238

 

 

conflict list, 248

decomposition

 

 

conforming mesh, 308, 319

trapezoidal, 124

 

 

connected subdivision, 30

vertical, 124

 

 

consistent mesh, 319

degeneracy, 5, 8, 137

 

 

constraint

degenerate case, 5, 8, 137

 

 

linear, 65, 66, 71

degree of freedom, 284

 

 

point on circle, 87

Delaunay corner, 213

 

 

CONSTRUCTARRANGEMENT, 182

Delaunay graph, 196

 

 

CONSTRUCTINTERVALTREE, 223

Delaunay triangulation, 168, 197

 

 

continuous measure, 175

computation, 199

 

 

contour line, 191

pseudo code, 200

 

 

convex, 2

DELAUNAYTRIANGULATION, 200

 

 

convex combination, 244

density, 271

 

 

convex hull, 2, 89, 193, 243

depth order, 260

 

 

3-dimensional, 244

design for assembly, 12

 

 

computation, 3, 246

destination

378

 

 

d-dimensional, 256

of half-edge, 31

diagonal

of mesh, 307

INDEX

of polygon, 46

elementary interval, 232

 

 

difference

ellipse

 

 

of polygons, 39

smallest enclosing, 90

 

 

Dijkstra’s algorithm, 324, 326, 331

embedding

 

 

direction

of graph, 30

 

 

representation of, 65

end vertex, 50

 

 

Dirichlet tessellation, 167

envelope

 

 

disc

lower, 253

 

 

smallest enclosing, 86

upper, 254

 

 

discrepancy, 174, 175, 188

Euclidean distance, 148, 169, 332

 

 

computation, 175

Euclidean minimum spanning tree, 215,

 

 

half-plane, 175

216

 

 

discrete measure, 175

Euler’s formula, 28, 150, 245

 

 

distance

event, 22, 51, 151

 

 

Euclidean, 148, 169, 332

circle, 155, 161

 

 

L1, 168

site, 153, 161

 

 

L2, 148, 169, 332

event point, 22, 51, 151

 

 

Lp, 168

event queue, 24, 51, 155

 

 

link, 332

exact arithmetic, 9

 

 

Manhattan, 168

exact cell decomposition, 303

 

 

distance function, 169

exact match query, 116

 

 

domain

expectation

 

 

of mesh, 308

linearity of, 78, 134, 205

 

 

of terrain, 191

expected performance, 78, 133

 

 

double wedge, 178

expected running time, 78

 

 

doubly-connected edge list, 29, 30, 48,

face, 30

 

 

155, 180, 247

 

 

dual

record of, 31

 

 

of line, 178

facet, 64, 245

 

 

of object, 177

ordinary, 64

 

 

of point, 177

top, 64

 

 

of segment, 178

false alarm, 156

 

 

dual graph

farthest-point Voronoi diagram, 164, 169

 

 

of triangulated polygon, 47

fat subdivision

 

 

dual plane, 178

point location in, 144

 

 

duality

fatness, 279

 

 

in higher dimensions, 186

feasible point, 71

 

 

in the plane, 177

feasible region, 71

 

 

dynamic convex hull, 13

feasible solution, 71

 

 

dynamic point location, 143

Fibonacci heap, 331

 

 

dynamization, 237

FINDINTERSECTIONS, 25

 

 

 

FINDNEWEVENT, 27

 

 

edge, 30

FINDSPLITNODE, 97

 

 

illegal, 194

finite element method, 307

 

 

of polytope, 245

first-level tree, 106, 344

 

 

edge flip, 194

flap, 251

 

 

edge list

flip

 

 

doubly-connected, 29, 30, 48, 155,

of edge, 194

 

 

180, 247

floating point arithmetic, 5

 

 

379

element

FOLLOWSEGMENT, 130

 

INDEX

forbidden configuration space, 285, 330

higher-order Voronoi diagram, 169

 

 

FORBIDDENSPACE, 298

horizon, 247

 

 

Fortune’s algorithm, 151

hull

 

 

fractional cascading, 109, 112, 143, 221

convex, 2, 89, 193, 243

 

 

free configuration space, 285, 324, 330

lower, 6, 254

 

 

free path, 305

upper, 6, 253

 

 

free space, 285, 324, 330

 

 

 

representation of, 287

illegal edge, 194

 

 

trapezoidal map of, 287, 324

implicit point location, 144

 

 

free split, 265

incidence preserving, 178

 

 

 

incident, 30

 

 

Gabriel graph, 215, 217

infeasible linear program, 71

 

 

general position, 9, 124

infeasible point, 71

 

 

GENERATEMESH, 316

inner vertex, 325

 

 

genus, 245

INSERTSEGMENTTREE, 234

 

 

geographic information systems, 1, 11,

interpolation

 

 

15

data-independent, 214

 

 

geometric graph, 215

linear, 191

 

 

geometric modeling, 15

INTERSECTHALFPLANES, 67

 

 

GIS, 11

intersection

 

 

Graham’s scan, 13

of half-planes, 66, 89

 

 

graph

of line segments, 19

 

 

Gabriel, 215, 217

of polygons, 39

 

 

geometric, 215

intersection-sensitive algorithm, 21

 

 

relative neighborhood, 215, 217

interval

 

 

visibility, 323

elementary, 232

 

 

grid, 116

interval tree, 220, 222, 237

 

 

guard

inversion, 186

 

 

for low-density scene, 272

isolated vertex, 31

 

 

half-edge, 31

iterated logarithm, 60

 

 

 

 

 

destination of, 31

jaggies, 174

 

 

origin of, 31

Jarvis’s march, 13

 

 

record of, 32

joint

 

 

half-plane discrepancy, 175

of robot, 283

 

 

half-planes

prismatic, 283

 

 

common intersection of, 66, 89

revolute, 283

 

 

HANDLECIRCLEEVENT, 158

 

 

 

HANDLEENDVERTEX, 53

k-level

 

 

HANDLEEVENTPOINT, 26

in arrangement, 187

 

 

HANDLEMERGEVERTEX, 54

k-set, 187

 

 

HANDLEREGULARVERTEX, 54

kd-tree, 100, 116

 

 

HANDLESITEEVENT, 158

 

 

 

HANDLESPLITVERTEX, 53

L1-metric, 168

 

 

HANDLESTARTVERTEX, 53

L2-metric, 148, 169, 332

 

 

harmonic number, 135

Lp-metric, 168

 

 

heap, 227

layer, 19, 335

 

 

Helly-type theorem, 90

layered range tree, 113

 

 

hidden surface removal, 259

legal triangulation, 195

 

 

higher-dimensional linear programming,

LEGALIZEEDGE, 201

380

 

 

82

LEGALTRIANGULATION, 195

level

map layer, 19, 335

INDEX

in arrangement, 185

map overlay, 1, 20

 

 

in data structure, 106, 343

computation, 33

 

 

line segment

pseudo code, 38

 

 

axis-parallel, 220

MAPOVERLAY, 38

 

 

line segment intersection, 19, 40

Markov’s inequality, 141

 

 

computation, 20

maximal planar subdivision, 193

 

 

counting, 41

measure

 

 

lower bound, 40

continuous, 175

 

 

pseudo code, 25

discrete, 175

 

 

red-blue, 40

medial axis, 169

 

 

linear constraint, 65, 66, 71

merge vertex, 50

 

 

linear interpolation, 191

mesh, 307

 

 

linear optimization, 71

conforming, 308, 319

 

 

linear program, 71

consistent, 319

 

 

bounded, 73

domain of, 308

 

 

dimension of, 71

non-uniform, 308

 

 

infeasible, 71

requirements, 308

 

 

unbounded, 73, 79

respecting the input, 308

 

 

linear programming, 71

structured, 319

 

 

1-dimensional, 75

triangular, 308

 

 

higher-dimensional, 82

uniform, 309

 

 

low-dimensional, 72

unstructured, 319

 

 

pseudo code, 75, 77, 84

mesh element, 307

 

 

linearity of expectation, 78, 134, 205

mesh generation, 307

 

 

link metric, 332

pseudo code, 316

 

 

locally shortest path, 325

metric

 

 

locus approach, 231

combined, 332

 

 

logarithm

Euclidean, 148, 169, 332

 

 

iterated, 60

L1, 168

 

 

LOWDENSITYBSP2D, 276

L2, 148, 169, 332

 

 

lower bound

Lp, 168

 

 

convex hull, 13

link, 332

 

 

line segment intersection, 40

Manhattan, 168

 

 

of auto-partition, 269

MINIDISC, 86

 

 

of binary space partition, 270

MINIDISCWITH2POINTS, 87

 

 

range tree, 116

MINIDISCWITHPOINT, 87

 

 

simplex range searching, 352

minimum spanning tree

 

 

triangulation, 59

Euclidean, 215, 216

 

 

Voronoi diagram, 170

minimum weight triangulation, 215, 218

 

 

lower envelope, 253

Minkowski difference, 292

 

 

lower hull, 6, 254

Minkowski sum, 291, 305, 330

 

 

lower vertical extension, 124

complexity, 297

 

 

LP-type problem, 90

computation, 295

 

 

 

of non-convex polygons, 296

 

 

MAKEMONOTONE, 53

pseudo code, 295

 

 

Manhattan metric, 168

MINKOWSKISUM, 295

 

 

manufacturing, 12, 15, 63, 89

mixture, 243

 

 

map

mobile robot, 283, 323

 

 

point location on, 122

molecular modeling, 12

 

 

381

trapezoidal, 122, 124, 287

monotone polygon, 49

 

INDEX

strictly, 55

simplicial, 337

 

 

triangulation of, 55

partition tree, 336, 338

 

 

motion planning, 1, 14, 162, 283, 323

path

 

 

exact cell decomposition, 303

free, 305

 

 

retraction method, 304

locally shortest, 325

 

 

road map for, 288

semi-free, 305

 

 

mouse

persistency, 143

 

 

clicking with, 5, 122

perturbation

 

 

multi-level data structure, 106, 238, 343

symbolic, 9, 14

 

 

 

PHASE1, 275

 

 

neighbor finding

pixel, 173, 259

 

 

in quadtree, 312

placement of robot, 284

 

 

non-crossing, 124

planar point location, 122

 

 

non-linear optimization, 86, 90

planar subdivision, 30, 121

 

 

non-uniform mesh, 308

maximal, 193

 

 

NORTHNEIGHBOR, 313

plane sweep, 22, 34, 51, 68, 151, 328

 

 

 

rotational, 328

 

 

objective function, 71

pocket, 61

 

 

obstacle, 283, 324

point

 

 

configuration-space, 285

infeasible, 71

 

 

obtuse angle, 319

Steiner, 309

 

 

octree, 318

point location, 121

 

 

operations research, 72

dynamic, 143

 

 

optimal vertex, 73

higher dimensional, 143

 

 

optimization

implicit, 144

 

 

combinatorial, 90

planar, 121

 

 

linear, 71

query, 128

 

 

non-linear, 86, 90

point location query, 121

 

 

order preserving, 178

point robot, 286, 324

 

 

order-k Voronoi diagram, 169, 188

polygon

 

 

ordinary facet, 64

monotone, 49

 

 

origin

rectilinear, 60

 

 

of half-edge, 31

simple, 46

 

 

orthogonal line segment, 220

star-shaped, 93, 145

 

 

orthogonal range query, 96

strictly monotone, 55

 

 

output-sensitive algorithm, 21, 99

triangulation of, 45

 

 

overlap

y-monotone, 49

 

 

cyclic, 260

polyhedral terrain, 192

 

 

overlay, 1, 20, 33, 167

polyhedron, 64

 

 

computation, 33

polytope, 244

 

 

pseudo code, 38

simplicial, 245

 

 

 

tetrahedralization of, 60

 

 

painter’s algorithm, 260

potential field method, 305

 

 

PAINTERSALGORITHM, 263

power diagram, 169

 

 

paraboloid, 178

preprocessing, 122

 

 

parameter space, 232

primal plane, 178

 

 

PARANOIDMAXIMUM, 93

primitive operation, 4

 

 

partial match query, 116

printed circuit board, 307

 

 

partition

priority search tree, 226, 237

 

 

auto, 262

prismatic joint, 283

382

 

 

binary space, 259

pseudodisc, 292

pseudodisc property, 293

ray tracing, 173

INDEX

pseudodiscs

rectangular range query, 96

 

 

complexity of union, 294

rectangular subdivision

 

 

 

point location in, 144

 

 

quadtree, 115, 273, 307, 309

rectilinear polygon, 60

 

 

balanced, 313

red-blue line segment intersection, 40

 

 

compressed, 318

redundant half-plane, 92

 

 

higher-dimensional, 318

reference point, 284

 

 

neighbor finding, 312

region

 

 

quadtree subdivision, 310

feasible, 71

 

 

query

regular vertex, 50

 

 

database, 95

relative neighborhood graph, 215, 217

 

 

exact match, 116

rendering, 173, 259

 

 

partial match, 116

REPORTINSUBTREE, 229

 

 

point location, 121, 128

RETRACTION, 162

 

 

range, 96

retraction, 162, 163

 

 

simplex range, 352

retraction method, 304

 

 

stabbing, 237

revolute joint, 283

 

 

stabbing counting, 237

road map, 288, 324

 

 

triangular range, 336

robot

 

 

windowing, 219, 335

articulated, 283

 

 

QUERYINTERVALTREE, 224

autonomous, 283

 

 

QUERYPRIOSEARCHTREE, 230

car-like, 284

 

 

QUERYSEGMENTTREE, 234

configuration of, 284

 

 

random number generator, 77

configuration space of, 285

 

 

degree of freedom, 284

 

 

random permutation

mobile, 283

 

 

computation, 77

motion planning for, 283

 

 

randomized algorithm, 75, 77, 78, 84,

open or closed, 286

 

 

128, 199, 208, 246, 264

parameter space of, 285

 

 

analysis, 76, 78, 88, 133, 205,

placement of, 284

 

 

210, 250, 265

point, 286, 324

 

 

RANDOMIZEDLP, 84

reference point of, 284

 

 

RANDOMPERMUTATION, 77

road map for, 288

 

 

range query, 220, 318

work space of, 284

 

 

1-dimensional, 96

robot arm, 86, 283

 

 

2-dimensional, 99

robotics, 1, 10, 14, 283

 

 

counting, 119

robustness, 5, 8, 9

 

 

orthogonal, 96

rotational plane sweep, 328

 

 

rectangular, 96

rounding error, 5

 

 

simplex, 352

roundness, 163

 

 

triangular, 336

running time

 

 

range searching

average, 78

 

 

approximate, 353

expected, 78

 

 

range tree, 99, 105, 109, 220

 

 

 

1-dimensional, 99

sample points, 174

 

 

2-dimensional, 106

scan-conversion, 259

 

 

d-dimensional, 109

search structure

 

 

layered, 113

for point location, 128

 

 

lower bound, 116

search tree

 

 

383

ray shooting, 146, 332

binary, 96

 

INDEX

SEARCHKDTREE, 103

 

 

second-level tree, 106, 344

 

 

see, 325

 

 

segment

 

 

axis-parallel, 220

 

 

segment tree, 231, 233, 237

 

 

SELECTBELOWPAIR, 350

 

 

SELECTBELOWPOINT, 348

 

 

SELECTINHALFPLANE, 339

 

 

SELECTINTSEGMENTS, 344

 

 

semi-free path, 305

 

 

shear transformation, 137

 

 

shortest path, 323

 

 

for polygonal robot, 330

 

 

in graph, 331

 

 

SHORTESTPATH, 326

 

 

side

 

 

in trapezoidal map, 125

 

 

simple arrangement, 180

 

 

simple polygon, 46

 

 

simplex algorithm, 72, 90

 

 

simplex range query, 352

 

 

lower bound, 352

 

 

simplicial partition, 337

 

 

simplicial polytope, 245

 

 

single cell, 304

 

 

site, 147

 

 

line segment, 160

 

 

site event, 153, 161

 

 

skeleton

 

 

of polygon, 169

 

 

slab, 122, 235

 

 

SLOWCONVEXHULL, 3

 

 

smallest enclosing ball, 90

 

 

smallest enclosing disc, 86

 

 

smallest enclosing ellipse, 90

 

 

smallest-width annulus, 163

 

 

solution

 

 

feasible, 71

 

 

split

 

 

free, 265

 

 

split vertex, 50

 

 

stabber, 189, 190

 

 

stabbing counting query, 237

 

 

stabbing number

 

 

of polygon, 61

 

 

stabbing query, 237

 

 

star-shaped polygon, 93, 145

 

 

start vertex, 50

384

 

 

status

of sweep line, 22, 25, 52, 155, 328

status structure, 25, 52, 155, 328 Steiner point, 214, 309

Steiner triangulation, 309 strictly monotone polygon, 55 structural change, 205, 210, 250 subdivision, 30, 121

complexity of, 30 connected, 30 maximal planar, 193 quadtree, 310 representation of, 29

subdivision overlay, 33 sum

Minkowski, 291 of two points, 291 vector, 291

supersampling, 174

sweep algorithm, 22, 34, 51, 68, 151, 328

rotational, 328

sweep line, 22, 51, 151, 160 symbolic perturbation, 9, 14

tail estimate, 140 terrain, 191

domain of, 191 polyhedral, 192

tetrahedralization

of polytope, 60 Thales’ Theorem, 194 thematic map layer, 19, 335 thematic map overlay, 20 top facet, 64

trading area, 147 transform

duality, 177 inversion, 186 shear, 137

translating polygon configuration space of, 291

configuration-space obstacle for, 291

transversal, 189, 190 trapezoidal decomposition, 124

trapezoidal map, 122, 124, 287, 324 complexity of, 127 computation, 128

of the free space, 287, 324 pseudo code, 129

TRAPEZOIDALMAP, 129 traveling salesman problem, 216 tree

1-dimensional range, 99 binary search, 96

binary space partition, 261 BSP, 261

cutting, 346 heap, 227

interval, 220, 222, 237 kd-tree, 100

octree, 318 partition, 336, 338

priority search, 226, 237 quadtree, 115, 307, 309 range, 105, 109 segment, 231, 233, 237

triangle

well-shaped, 308 triangular mesh, 308 triangular range query, 336 triangulated polygon

3-coloring, 47, 59 dual graph, 47

TRIANGULATEMONOTONEPOLYGON,

57 triangulation

computation, 49, 55 Delaunay, 197 legal, 195

lower bound, 59

minimum weight, 215, 218 of monotone polygon, 55 of point set, 192, 193

of polygon, 45, 46 pseudo code, 53, 57 Steiner, 309

triangulation refinement point location by, 143

turn vertex, 49 twin

of half-edge, 31

unbounded linear program, 73, 79 uniform mesh, 309

union

complexity of, 304 of polygons, 39

Upper Bound Theorem, 256 upper envelope, 254

upper hull, 6, 253

upper vertical extension, 124

INDEX

vector sum, 291 vertex, 30

inner, 325 isolated, 31 optimal, 73 record of, 31

vertical decomposition, 124 vertical extension, 124

lower, 124 upper, 124

viewing volume, 220 visibility complex, 332 visibility edge, 325 visibility graph, 323

computation, 326 pseudo code, 326

visibility–Voronoi complex, 332 VISIBILITYGRAPH, 326

VISIBLE, 329 visible, 48, 259, 325

visible region, 61, 247 VISIBLEVERTICES, 328

Voronoi assignment model, 148 Voronoi cell, 149

Voronoi diagram, 1, 147, 148, 254 abstract, 169

complexity of, 149, 168 computation, 151 degenerate cases, 159 farthest-point, 164, 169 higher-order, 169 lower bound, 170 medial axis, 169

of line segments, 160 order-k, 169, 188 power diagram, 169 pseudo code, 157 skeleton, 169 weighted, 169

VORONOIDIAGRAM, 157

weighted Voronoi diagram, 169 well-shaped triangle, 308 window, 219, 335

window system, 122 windowing query, 219, 335 work space, 284, 324

y-monotone polygon, 49

385

INDEX z-buffer algorithm, 259 zone

of hyperplane, 187 of line, 183, 269

Zone Theorem, 184, 187

386