Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ......

24
Voronoi Diagrams Mervyn Y. Tan [email protected] This document contains the answers to the exercises in the companion document. Answers 1 Distance Metrics ........................................................................................................................................ 2 2 Bisectors .................................................................................................................................................... 4 3 Voronoi Diagrams ..................................................................................................................................... 7 4 Gradient Construction ............................................................................................................................... 9 5 Voronoi Diagrams as a Three-Dimensional Surface ............................................................................... 11 6 Plane-Sweep Construction....................................................................................................................... 12 7 Weighted Generators ............................................................................................................................... 17 8 Dominance............................................................................................................................................... 20 9 Complex Metrics using Weighted Generators ......................................................................................... 22

Transcript of Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ......

Page 1: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Voronoi Diagrams

Mervyn Y. Tan

[email protected]

This document contains the answers to the exercises in the companion document.

Answers

1 Distance Metrics ........................................................................................................................................ 2

2 Bisectors .................................................................................................................................................... 4

3 Voronoi Diagrams ..................................................................................................................................... 7

4 Gradient Construction ............................................................................................................................... 9

5 Voronoi Diagrams as a Three-Dimensional Surface ............................................................................... 11

6 Plane-Sweep Construction ....................................................................................................................... 12

7 Weighted Generators ............................................................................................................................... 17

8 Dominance ............................................................................................................................................... 20

9 Complex Metrics using Weighted Generators ......................................................................................... 22

Page 2: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

1 Distance Metrics

Exercise 1.1 What are the distances between sites A, B, and C in the Euclidean, L-infinity, and Manhattan

metric? (Hint: Expand a distance envelope rather than using the explicit formula)

Exercise 1.2 Locate a point equidistant from sites A, B, and C under the L-infinity and Manhattan

metrics. (Hint: Expand distance envelopes until they intersect.)

1 unit

1 unit

A

B

C

Euclidean

d(A, B) = 5

B d(B, C) = 4sqrt(2)

d(A, C) = 7

A C L-Infinity

d(A, B) = 4

d(B, C) = 4

d(A, C) = 7 1 unit

1 unit

Page 3: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 1.3 What are the distances among sites A, B, and C in the L-infinity metric? (Hint: Use distance

envelope expansion.)

L-Infinity

1 unit

1 unit

B d(A, B) = 3

d(B, C) = 2.5

d(A, C) = 5

A

C

Page 4: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

2 Bisectors

Exercise 2.1 What is the bisector between sites B and C in the Euclidean metric?

Exercise 2.2 What is the bisector between sites B and C in the Euclidean metric?

1 unit

1 unit

B

C

B

C

1 unit

1 unit

Page 5: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 2.3 What is the bisector between these two points in the Manhattan metric?

1 unit

1 unit

B

C

Exercise 2.4 What is the bisector between sites A and B in the L-infinity metric? (Hint: Use distance

envelope expansion.)

B

A

1 unit

1 unit

Page 6: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 2.5 What is the bisector between sites A and B in the L-infinity metric?

B

A

1 unit

1 unit

Page 7: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

3 Voronoi Diagrams

Exercise 3.1 What is the Voronoi diagram for the set of generators {A, B, C} in the Euclidean metric?

Identify and draw all Voronoi bisectors.

Exercise 3.2 What is the Voronoi diagram for the set of generators {A, B, C} in the L-infinity metric?

Identify and draw all Voronoi bisectors.

A

B

C

1 unit

A

B

C

1 unit

1 unit

1 unit

Page 8: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 3.3 What is the Voronoi diagram for the set of generators {A, B, C} in the Manhattan metric?

Identify and draw all Voronoi bisectors.

Exercise 3.4 What is the Voronoi diagram for the set of generators {A, B, C} in the L-infinity metric?

Identify and draw all Voronoi bisectors.

1 unit

1 unit

A

B

C

1 unit

1 unit

A

C

B

Page 9: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

4 Gradient Construction

Exercise 4.1 Indicate all gradients, with their spokes, for generators {A, B, C} in the L-infinity metric.

Draw the Voronoi diagram and label each Voronoi vertex with its weight.

A

B

C

3.5

3.5

2 2

2

1 unit

1 unit

Exercise 4.2 Indicate all gradients, with their spokes, for generators {A, B} in the L-infinity metric

Draw the Voronoi diagram and label each Voronoi vertex with its weight.

A

B

1 1

2

1 unit

1 unit

Page 10: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 4.3 Indicate all gradients, with their spokes, for generators {A, B} in the L-infinity metric

Draw the Voronoi diagram and label each Voronoi vertex with its weight.

A

B

1

2 1

2

1 unit

1 unit

Exercise 4.4 Indicate all gradients, with their spokes, for generators {A, B, C} in the L-infinity metric.

Draw the Voronoi diagram and label each Voronoi vertex with its weight.

A

C

B

0.75 1

1.5

1.5

1.5

1 1

1 unit

1 unit

Page 11: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

5 Voronoi Diagrams as a Three-Dimensional Surface

Exercise 5.1 What is the 3D slope of a bisector between two regions whose gradients are (1, 2) and (2, 3)

in the L-infinity distance metric?

any vector parallel to (1, 1, 1)

Exercise 5.2 What is the 3D slope of a bisector between two regions whose gradients are (1, π) and (e, 3)

in the L-infinity distance metric?

any vector parallel to (1, 1, 1)

Exercise 5.3 Draw the Voronoi diagram for the set of lines below under the L-infinity distance metric.

What are the 3D bisector slopes and vertex coordinates? (Hint: use the equations for bisector slope and the

coordinate of a Voronoi vertex)

12

A

B

C

12 0

xA = (2, 0, 0) gA = (4, 1) nA = (-4, -1, 5) bisector(A, B) = (-19, -21, -11) xB = (0, 11, 0) gB = (-1, -3) nB = (1, 3, 4) bisector(B, C) = (27, 3, -9) xC = (3, 0, 0) gC = (-2, 3) nC = (2, -3, 5) bisector(C, A) = (-10, -30, -14) vertex(A, B, C) = (55/13, 74/13, 38/13) = (4.231, 5.692, 2.923)

Page 12: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

6 Plane-Sweep Construction

Exercise 6.1 We shall now attempt to construct the following Voronoi diagram in L-infinity using the

plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 6.2 Draw the Voronoi diagram in the L-infinity metric along with all gradients for the generators

below. This exercise simulates a horizontal sweep-line construction for the diagram in the previous

exercise.

120

12

120

12

5

A

B

16 16

8 8

8

6

8

4 4

8 8

8

8 8

6

4

12

12

0

4.0001

Page 13: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

12 0

12

120

12

12 0

12

120

12

12 0

12

120

12

6

8.0001

9

7

8

10

Notice the correlation between the priorities of the vertices and the time at which they are inserted into the

Voronoi diagram.

Page 14: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 6.3 We shall now attempt to construct the following Voronoi diagram in L-infinity using the

plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

10 14

2

4 14 2

5 6 10 2 2 5 7 10 2

7 5 7 14 8 2 2 7

16 8 2

2 14

Page 15: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 6.4 Draw the Voronoi diagram in the L-infinity metric along with all gradients for the generators

below. This exercise simulates a vertical sweep-line construction for the diagram in the previous exercise.

0 12

12

0 12

12

0 12

12

0 12

120 12

12

0 12

12

2.0001

3

5

4

5.0001

6

Page 16: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

0 12

12

0 12

12

0 12

12

0 12

120 12

12

0 12

12

7

7.0001

8

9

10

11

Page 17: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

7 Weighted Generators

Exercise 7.1 What are the priorities of generators A, B, and C in the diagram above when they are

weighted { A = 3, B = 2, C = 1 } for a horizontal sweepline? For a vertical sweepline?

For a horizontal sweep-line, the priorities are { A = 7, B = 10, C = 5 }.

For a vertical sweep-line, the priorities are { A = 6, B = 8, C = 11}.

Exercise 7.2 We shall now attempt to construct the following weighted Voronoi diagram using the plane-

sweep algorithm and a vertical sweepline. Assume the generators are weighted according to { A = 3, B = 2,

C = 1 }. Label the priorities of all vertices.

A

C

B

6

8

11

8

20

15

15 11 11 6

6

8

11

11

8 9

11

16

Exercise 7.3 Draw the Voronoi diagram in the L-infinity metric along with all gradients for the generators

below. This exercise simulates a vertical sweep-line construction for the diagram above.

Page 18: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

0

0

0

6.0001

8.0001

10

0 7

0 9

0 11.0001

Page 19: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 7.4 What is the Voronoi diagram in the L-infinity metric for the weighted generators below?

(Note: you may group adjacent Voronoi faces with the same gradient together into one face, rather than

create a region of ambiguity.)

5

2

1 1

5

5

6 5

Exercise 7.5 What is the Voronoi diagram in the L-infinity metric for the weighted generators below?

(Note: you may group adjacent Voronoi faces with the same gradient together into one face, rather than

create a region of ambiguity.)

6 6

2 2 2

3.5

3.5 4 4 8 8

6

3.5

6

Page 20: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

8 Dominance

Exercise 8.1 What is the Voronoi diagram in the L-infinity metric for the weighted generators below?

Exercise 8.2 What is the Voronoi diagram in the L-infinity metric for the weighted generators below?

B

A

( 7, 6, 3 )

12 0 0

12

( 5, 4, 3 )

( 8, 8, 0 ) ( 4, 8, 0 )

7 7 8 8

4

4 4

4 3

3.5

3

0 0

B

A

( 7, 6, 0 )

12 0 0

12

4 4 5

0

0

5

5

6

( 4, 8, 3 ) ( 8, 8, 3 )

( 5, 4, 0 )

Page 21: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 8.3 What is the Voronoi diagram in the L-infinity metric for the weighted generators below?

12

Exercise 8.4 What is the Voronoi diagram in the L-infinity metric for the weighted generators below?

12 0 0 4

4

2

2

4 8 4

0

4

(4, 4, 0) (8, 4, 2)

(4, 8, 2) 4

4

12 0 0

12

0

4 4

4

4

4 0

4

4 (4, 8, 2)

(8, 4, 2) (4, 4, 0)

(8, 8, 0)

Page 22: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

9 Complex Metrics using Weighted Generators

Exercise 9.1 Draw the second-order Voronoi diagram for unweighted generators {A, B, C} under the L-

infinity distance metric.

6

2 2 2

3.5

3.5

6

4 4

3.5

6

8 8

6

Exercise 9.2 Draw the second-order Voronoi diagram for unweighted generators {A, B} under the L-

infinity distance metric.

5

5

1 1

5

6 5

2

Page 23: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 9.3 Draw the Voronoi diagram of the flipped medial axes of unweighted generators {A, B, C}

under the L-infinity distance metric.

Exercise 9.4 Draw the Voronoi diagram of the cores of rectangles {D, E} under the L-infinity distance

metric.

D

E

2

6 6

2

1

4 4 6

4 4

4

8

10

A

B C 1

1

1

2 2

3.5

4

4

8 5 5

5

4

3

4

3

5

8

5

3.5

Page 24: Voronoi Diagramsyaroslavvb.com/papers/tan-voronoi.pdf · 2007-08-21 · 3 Voronoi Diagrams ... plane-sweep algorithm and a vertical sweepline. Label the priorities of all vertices.

Exercise 9.5 Let A be the set of flipped medial axes of unweighted generators {A, B, C} in exercise 9.3.

Let B be the set of cores of rectangles {D, E} in exercise 9.4. Draw Voronoi(A U B).

2 2 1 1

1

1 2 2

3 3

4 5 5

3.5 3.5

5

4

4

4 4 5 4 4

2.5

2.5

2.5

2.5

4

4

8

3

3

C

B

A

E

D

8