Computational Geometry Lecture 11: Arrangements and Duality - - PowerPoint PPT Presentation

computational geometry
SMART_READER_LITE
LIVE PREVIEW

Computational Geometry Lecture 11: Arrangements and Duality - - PowerPoint PPT Presentation

Introduction Duality Arrangements Arrangements and Duality Computational Geometry Lecture 11: Arrangements and Duality Computational Geometry Lecture 11: Arrangements and Duality Introduction Duality Arrangements Three Points on a Line


slide-1
SLIDE 1

Introduction Duality Arrangements

Arrangements and Duality

Computational Geometry

Lecture 11: Arrangements and Duality

Computational Geometry Lecture 11: Arrangements and Duality

slide-2
SLIDE 2

Introduction Duality Arrangements

Three Points on a Line

Question: In a set of n points, are there 3 points on a line?

Computational Geometry Lecture 11: Arrangements and Duality

slide-3
SLIDE 3

Introduction Duality Arrangements

Three Points on a Line

Question: In a set of n points, are there 3 points on a line? Naive algorithm: tests all triples in O(n3) time

Computational Geometry Lecture 11: Arrangements and Duality

slide-4
SLIDE 4

Introduction Duality Arrangements

Three Points on a Line

Question: In a set of n points, are there 3 points on a line? Naive algorithm: tests all triples in O(n3) time Faster algorithm: uses duality and arrangements

Computational Geometry Lecture 11: Arrangements and Duality

slide-5
SLIDE 5

Introduction Duality Arrangements

Three Points on a Line

Question: In a set of n points, are there 3 points on a line? Naive algorithm: tests all triples in O(n3) time Faster algorithm: uses duality and arrangements Note: other motivation in chapter 8 of the book

Computational Geometry Lecture 11: Arrangements and Duality

slide-6
SLIDE 6

Introduction Duality Arrangements

Duality

ℓ : y = mx + b p = (px, py)

Note:

Computational Geometry Lecture 11: Arrangements and Duality

slide-7
SLIDE 7

Introduction Duality Arrangements

Duality

ℓ : y = mx + b p = (px, py) primal plane dual plane p∗ : y = pxx − py ℓ∗ = (m, −b)

point p = (px,py) → line p∗ : y = pxx−py line ℓ : y = mx+b → point ℓ∗ = (m,−b) Note:

Computational Geometry Lecture 11: Arrangements and Duality

slide-8
SLIDE 8

Introduction Duality Arrangements

Duality

ℓ : y = mx + b p = (px, py) primal plane dual plane p∗ : y = pxx − py ℓ∗ = (m, −b)

point p = (px,py) → line p∗ : y = pxx−py line ℓ : y = mx+b → point ℓ∗ = (m,−b) Note: self inverse (p∗)∗ = p, (ℓ∗)∗ = ℓ

Computational Geometry Lecture 11: Arrangements and Duality

slide-9
SLIDE 9

Introduction Duality Arrangements

Duality

ℓ : y = mx + b p = (px, py) primal plane dual plane p∗ : y = pxx − py ℓ∗ = (m, −b)

point p = (px,py) → line p∗ : y = pxx−py line ℓ : y = mx+b → point ℓ∗ = (m,−b) Note: does not handle vertical lines

Computational Geometry Lecture 11: Arrangements and Duality

slide-10
SLIDE 10

Introduction Duality Arrangements

Duality

primal plane dual plane ℓ : y = mx + b p = (px, py) mpx + b − py p∗ : y = pxx − py ℓ∗ = (m, −b) pxm − py + b

Duality preserves vertical distances

Computational Geometry Lecture 11: Arrangements and Duality

slide-11
SLIDE 11

Introduction Duality Arrangements

Duality

primal plane dual plane ℓ : y = mx + b p = (px, py) mpx + b − py p∗ : y = pxx − py ℓ∗ = (m, −b) pxm − py + b

Duality preserves vertical distances ⇒ incidence preserving: p ∈ ℓ if and only if ℓ∗ ∈ p∗

Computational Geometry Lecture 11: Arrangements and Duality

slide-12
SLIDE 12

Introduction Duality Arrangements

Duality

primal plane dual plane ℓ : y = mx + b p = (px, py) mpx + b − py p∗ : y = pxx − py ℓ∗ = (m, −b) pxm − py + b

Duality preserves vertical distances ⇒ incidence preserving: p ∈ ℓ if and only if ℓ∗ ∈ p∗ ⇒ order preserving: p lies below ℓ if and only if ℓ∗ lies below p∗

Computational Geometry Lecture 11: Arrangements and Duality

slide-13
SLIDE 13

Introduction Duality Arrangements

Duality

It can be applied to other objects, like segments

primal plane s p q ℓ

Computational Geometry Lecture 11: Arrangements and Duality

slide-14
SLIDE 14

Introduction Duality Arrangements

Duality

It can be applied to other objects, like segments

primal plane s p q ℓ dual plane s∗ p∗ q∗ ℓ∗

The dual of a segment is a double wedge Question: What line would dualize to a point in the right part of the double wedge?

Computational Geometry Lecture 11: Arrangements and Duality

slide-15
SLIDE 15

Introduction Duality Arrangements

Usefulness of Duality

Why use duality? It gives a new perspective! Detecting three points on a line dualizes to detecting three lines intersecting in a point

x y x y primal plane dual plane ℓ ℓ∗ p1 p2 p3 p4 p2∗ p4∗ p1∗ p3∗

Computational Geometry Lecture 11: Arrangements and Duality

slide-16
SLIDE 16

Introduction Duality Arrangements

Usefulness of Duality

Why use duality? It gives a new perspective! Detecting three points on a line dualizes to detecting three lines intersecting in a point

x y x y primal plane dual plane ℓ ℓ∗ p1 p2 p3 p4 p2∗ p4∗ p1∗ p3∗

Next we use arrangements

Computational Geometry Lecture 11: Arrangements and Duality

slide-17
SLIDE 17

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Arrangement A(L): subdivision induced by a set of lines L consists of faces, edges and vertices (some unbounded) arrangements consist of

  • ther geometric objects too,

like line segments, circles, higher-dimensional objects

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-18
SLIDE 18

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Arrangement A(L): subdivision induced by a set of lines L consists of faces, edges and vertices (some unbounded) arrangements consist of

  • ther geometric objects too,

like line segments, circles, higher-dimensional objects

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-19
SLIDE 19

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Combinatorial Complexity: ≤ n(n−1)/2 vertices ≤ n2 edges ≤ n2/2+n/2+1 faces: add lines incrementally 1+

n

i=1

i = n(n+1)/2+1 equality holds in simple arrangements

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-20
SLIDE 20

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Combinatorial Complexity: ≤ n(n−1)/2 vertices ≤ n2 edges ≤ n2/2+n/2+1 faces: add lines incrementally 1+

n

i=1

i = n(n+1)/2+1 equality holds in simple arrangements

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-21
SLIDE 21

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Combinatorial Complexity: ≤ n(n−1)/2 vertices ≤ n2 edges ≤ n2/2+n/2+1 faces: add lines incrementally 1+

n

i=1

i = n(n+1)/2+1 equality holds in simple arrangements

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-22
SLIDE 22

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Combinatorial Complexity: ≤ n(n−1)/2 vertices ≤ n2 edges ≤ n2/2+n/2+1 faces: add lines incrementally 1+

n

i=1

i = n(n+1)/2+1 equality holds in simple arrangements

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-23
SLIDE 23

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Arrangements of Lines

Combinatorial Complexity: ≤ n(n−1)/2 vertices ≤ n2 edges ≤ n2/2+n/2+1 faces: add lines incrementally 1+

n

i=1

i = n(n+1)/2+1 equality holds in simple arrangements Overall O(n2) complexity

edge vertex face

Computational Geometry Lecture 11: Arrangements and Duality

slide-24
SLIDE 24

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Constructing Arrangements

Goal: Compute A(L) in bounding box in DCEL representation plane sweep for line segment intersection: O((n+k)logn) = O(n2 logn) faster: incremental construction

Computational Geometry Lecture 11: Arrangements and Duality

slide-25
SLIDE 25

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Constructing Arrangements

Goal: Compute A(L) in bounding box in DCEL representation plane sweep for line segment intersection: O((n+k)logn) = O(n2 logn) faster: incremental construction

Computational Geometry Lecture 11: Arrangements and Duality

slide-26
SLIDE 26

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Constructing Arrangements

Goal: Compute A(L) in bounding box in DCEL representation plane sweep for line segment intersection: O((n+k)logn) = O(n2 logn) faster: incremental construction

Computational Geometry Lecture 11: Arrangements and Duality

slide-27
SLIDE 27

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

ℓi

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines
  • Output. DCEL for A(L) in B(L)

1. Compute bounding box B(L) 2. Construct DCEL for subdivision induced by B(L) 3. for i ← 1 to n 4. do insert ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-28
SLIDE 28

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Algorithm ConstructArrangement(L)

  • Input. A set L of n lines in the plane
  • Output. DCEL for subdivision induced by B(L) and the part
  • f A(L) inside B(L), where B(L) is a suitable bounding box

1. Compute a bounding box B(L) that contains all vertices

  • f A(L) in its interior

2. Construct DCEL for the subdivision induced by B(L) 3. for i ← 1 to n 4. do Find the edge e on B(L) that contains the leftmost intersection point of ℓi and Ai 5. f ← the bounded face incident to e 6. while f is not the unbounded face, that is, the face outside B(L) 7. do Split f, and set f to be the next face intersected by ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-29
SLIDE 29

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Face split:

f ℓi = ⇒ ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-30
SLIDE 30

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Runtime analysis: Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines
  • Output. DCEL for A(L) in B(L)

1. Compute bounding box B(L) 2. Construct DCEL for subdivision induced by B(L) 3. for i ← 1 to n 4. do insert ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-31
SLIDE 31

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Runtime analysis:

  • 1. O(n2)

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines
  • Output. DCEL for A(L) in B(L)

1. Compute bounding box B(L) 2. Construct DCEL for subdivision induced by B(L) 3. for i ← 1 to n 4. do insert ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-32
SLIDE 32

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Runtime analysis:

  • 1. O(n2)
  • 2. constant

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines
  • Output. DCEL for A(L) in B(L)

1. Compute bounding box B(L) 2. Construct DCEL for subdivision induced by B(L) 3. for i ← 1 to n 4. do insert ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-33
SLIDE 33

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Runtime analysis:

  • 1. O(n2)
  • 2. constant
  • 3. & 4. ?

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines
  • Output. DCEL for A(L) in B(L)

1. Compute bounding box B(L) 2. Construct DCEL for subdivision induced by B(L) 3. for i ← 1 to n 4. do insert ℓi

Computational Geometry Lecture 11: Arrangements and Duality

slide-34
SLIDE 34

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

The zone of a line ℓ in an arrangement A(L) is the set of faces of A(L) whose closure intersects ℓ

Computational Geometry Lecture 11: Arrangements and Duality

slide-35
SLIDE 35

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

The zone of a line ℓ in an arrangement A(L) is the set of faces of A(L) whose closure intersects ℓ

Theorem: The complexity of the zone of a line in an arrangement of m lines is O(m)

Computational Geometry Lecture 11: Arrangements and Duality

slide-36
SLIDE 36

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

Theorem: The complexity of the zone of a line in an arrangement

  • f m lines is O(m)

Proof: We can assume ℓ horizontal and no other line is horizontal We count number of left-bounding edges We show by induction on m that this at most 5m:

m = 1 : trivially true m > 1 : only at most 3 new edges if ℓ1 is unique,

Computational Geometry Lecture 11: Arrangements and Duality

slide-37
SLIDE 37

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

Theorem: The complexity of the zone of a line in an arrangement

  • f m lines is O(m)

Proof: We can assume ℓ horizontal and no other line is horizontal We count number of left-bounding edges We show by induction on m that this at most 5m:

m = 1 : trivially true m > 1 : only at most 3 new edges if ℓ1 is unique,

Computational Geometry Lecture 11: Arrangements and Duality

slide-38
SLIDE 38

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

Theorem: The complexity of the zone of a line in an arrangement

  • f m lines is O(m)

Proof: We can assume ℓ horizontal and no other line is horizontal We count number of left-bounding edges We show by induction on m that this at most 5m:

m = 1 : trivially true m > 1 : only at most 3 new edges if ℓ1 is unique,

Computational Geometry Lecture 11: Arrangements and Duality

slide-39
SLIDE 39

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

Theorem: The complexity of the zone of a line in an arrangement

  • f m lines is O(m)

Proof: We can assume ℓ horizontal and no other line is horizontal We count number of left-bounding edges We show by induction on m that this at most 5m:

m = 1 : trivially true m > 1 : only at most 3 new edges if ℓ1 is unique,

Computational Geometry Lecture 11: Arrangements and Duality

slide-40
SLIDE 40

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

Theorem: The complexity of the zone of a line in an arrangement

  • f m lines is O(m)

Proof: We can assume ℓ horizontal and no other line is horizontal We count number of left-bounding edges We show by induction on m that this at most 5m:

m = 1 : trivially true m > 1 : only at most 3 new edges if ℓ1 is unique,

ℓ w v ℓ2 ℓ1

Computational Geometry Lecture 11: Arrangements and Duality

slide-41
SLIDE 41

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Zone Theorem

Theorem: The complexity of the zone of a line in an arrangement

  • f m lines is O(m)

Proof: We can assume ℓ horizontal and no other line is horizontal We count number of left-bounding edges We show by induction on m that this at most 5m:

m = 1 : trivially true m > 1 : only at most 3 new edges if ℓ1 is unique, at most 5 if ℓ1 is not unique 5(m−1)+5 = 5m

ℓ w v ℓ2 ℓ1

Computational Geometry Lecture 11: Arrangements and Duality

slide-42
SLIDE 42

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Run time analysis: Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines.
  • Output. DCEL for A(L) in B(L).

1. Compute bounding box B(L). 2. Construct DCEL for subdivision induced by B(L). 3. for i ← 1 to n 4. do insert ℓi.

Computational Geometry Lecture 11: Arrangements and Duality

slide-43
SLIDE 43

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Run time analysis:

  • 1. O(n2)

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines.
  • Output. DCEL for A(L) in B(L).

1. Compute bounding box B(L). 2. Construct DCEL for subdivision induced by B(L). 3. for i ← 1 to n 4. do insert ℓi.

Computational Geometry Lecture 11: Arrangements and Duality

slide-44
SLIDE 44

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Run time analysis:

  • 1. O(n2)
  • 2. constant

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines.
  • Output. DCEL for A(L) in B(L).

1. Compute bounding box B(L). 2. Construct DCEL for subdivision induced by B(L). 3. for i ← 1 to n 4. do insert ℓi.

Computational Geometry Lecture 11: Arrangements and Duality

slide-45
SLIDE 45

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Run time analysis:

  • 1. O(n2)
  • 2. constant
  • 3. & 4.

∑n

i=1 O(i) = O(n2)

Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines.
  • Output. DCEL for A(L) in B(L).

1. Compute bounding box B(L). 2. Construct DCEL for subdivision induced by B(L). 3. for i ← 1 to n 4. do insert ℓi.

Computational Geometry Lecture 11: Arrangements and Duality

slide-46
SLIDE 46

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Incremental Construction

Run time analysis:

  • 1. O(n2)
  • 2. constant
  • 3. & 4.

∑n

i=1 O(i) = O(n2)

In total O(n2) Algorithm ConstructArrange- ment(L)

  • Input. Set L of n lines.
  • Output. DCEL for A(L) in B(L).

1. Compute bounding box B(L). 2. Construct DCEL for subdivision induced by B(L). 3. for i ← 1 to n 4. do insert ℓi.

Computational Geometry Lecture 11: Arrangements and Duality

slide-47
SLIDE 47

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

3 Points on a Line

Computational Geometry Lecture 11: Arrangements and Duality

slide-48
SLIDE 48

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

3 Points on a Line

Algorithm: run incremental construction algorithm for dual problem stop when 3 lines pass through a point Run time: O(n2)

Computational Geometry Lecture 11: Arrangements and Duality

slide-49
SLIDE 49

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Example: Motion Planning

Where can the rod move by translation (no rotations) while avoiding obstacles? pick a reference point: lower end-point of rod shrink rod to a point, expand obstacles accordingly: locus of semi-free placements reachable configurations: cell of initial configuration in arrangement of line segments

Computational Geometry Lecture 11: Arrangements and Duality

slide-50
SLIDE 50

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Example: Motion Planning

Where can the rod move by translation (no rotations) while avoiding obstacles? pick a reference point: lower end-point of rod shrink rod to a point, expand obstacles accordingly: locus of semi-free placements reachable configurations: cell of initial configuration in arrangement of line segments

Computational Geometry Lecture 11: Arrangements and Duality

slide-51
SLIDE 51

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Example: Motion Planning

Where can the rod move by translation (no rotations) while avoiding obstacles? pick a reference point: lower end-point of rod shrink rod to a point, expand obstacles accordingly: locus of semi-free placements reachable configurations: cell of initial configuration in arrangement of line segments

Computational Geometry Lecture 11: Arrangements and Duality

slide-52
SLIDE 52

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Example: Motion Planning

Where can the rod move by translation (no rotations) while avoiding obstacles? pick a reference point: lower end-point of rod shrink rod to a point, expand obstacles accordingly: locus of semi-free placements reachable configurations: cell of initial configuration in arrangement of line segments

Computational Geometry Lecture 11: Arrangements and Duality

slide-53
SLIDE 53

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Example: Motion Planning

Where can the rod move by translation (no rotations) while avoiding obstacles? pick a reference point: lower end-point of rod shrink rod to a point, expand obstacles accordingly: locus of semi-free placements reachable configurations: cell of initial configuration in arrangement of line segments

Computational Geometry Lecture 11: Arrangements and Duality

slide-54
SLIDE 54

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

k-levels in Arrangements

The level of a point in an arrangement of lines is the number of lines strictly above it

3 1 2 2 2 1 3 3 3 4

Computational Geometry Lecture 11: Arrangements and Duality

slide-55
SLIDE 55

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

k-levels in Arrangements

The level of a point in an arrangement of lines is the number of lines strictly above it Open problem: What is the complexity of k-levels?

3 1 2 2 2 1 3 3 3 4

Computational Geometry Lecture 11: Arrangements and Duality

slide-56
SLIDE 56

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

k-levels in Arrangements

The level of a point in an arrangement of lines is the number of lines strictly above it Open problem: What is the complexity of k-levels? Dual problem: What is the number

  • f k-sets in a point set?

5-set ℓ

Computational Geometry Lecture 11: Arrangements and Duality

slide-57
SLIDE 57

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

k-levels in Arrangements

The level of a point in an arrangement of lines is the number of lines strictly above it Open problem: What is the complexity of k-levels? Dual problem: What is the number

  • f k-sets in a point set?

Known bounds: Erd¨

  • s et al. ’73:

Ω(nlogk) and O(nk1/2) Dey ’97: O(nk1/3)

5-set ℓ

Computational Geometry Lecture 11: Arrangements and Duality

slide-58
SLIDE 58

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

k-levels in Arrangements

The level of a point in an arrangement of lines is the number of lines strictly above it Open problem: What is the complexity of k-levels? Dual problem: What is the number

  • f k-sets in a point set?

Known bounds: Erd¨

  • s et al. ’73:

Ω(nlogk) and O(nk1/2) Dey ’97: O(nk1/3)

5-set ℓ

Computational Geometry Lecture 11: Arrangements and Duality

slide-59
SLIDE 59

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Three dimensions

In 3D, we have point-plane duality; lines dualize to other lines An arrangement induced by n planes in 3D has complexity O(n3) Deciding whether a set of points in 3D has four or more co-planar points can be done in O(n3) time (dualize and construct the arrangement)

Computational Geometry Lecture 11: Arrangements and Duality

slide-60
SLIDE 60

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

More Duality

A geometric interpretation: parabola U : y = x2/2 point p = (px,py) on U derivative of U at p is px, i.e., p∗ has same slope as the tangent line the tangent line intersects y-axis at (0,−p2

x/2)

⇒ p∗ is the tangent line at p

p q q′ p∗ q∗ U

Computational Geometry Lecture 11: Arrangements and Duality

slide-61
SLIDE 61

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

More Duality

A geometric interpretation: parabola U : y = x2/2 point p = (px,py) on U derivative of U at p is px, i.e., p∗ has same slope as the tangent line the tangent line intersects y-axis at (0,−p2

x/2)

⇒ p∗ is the tangent line at p

p q q′ p∗ q∗ U

Computational Geometry Lecture 11: Arrangements and Duality

slide-62
SLIDE 62

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

More Duality

A geometric interpretation: parabola U : y = x2/2 point p = (px,py) on U derivative of U at p is px, i.e., p∗ has same slope as the tangent line the tangent line intersects y-axis at (0,−p2

x/2)

⇒ p∗ is the tangent line at p

p q q′ p∗ q∗ U

Computational Geometry Lecture 11: Arrangements and Duality

slide-63
SLIDE 63

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

More Duality

A geometric interpretation: parabola U : y = x2/2 point p = (px,py) on U derivative of U at p is px, i.e., p∗ has same slope as the tangent line the tangent line intersects y-axis at (0,−p2

x/2)

⇒ p∗ is the tangent line at p

p q q′ p∗ q∗ U

Computational Geometry Lecture 11: Arrangements and Duality

slide-64
SLIDE 64

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

More Duality

A geometric interpretation: parabola U : y = x2/2 point p = (px,py) on U derivative of U at p is px, i.e., p∗ has same slope as the tangent line the tangent line intersects y-axis at (0,−p2

x/2)

⇒ p∗ is the tangent line at p

p q q′ p∗ q∗ U

Computational Geometry Lecture 11: Arrangements and Duality

slide-65
SLIDE 65

Introduction Duality Arrangements Incremental Construction Motion Planning k-Levels

Summary

Duality is a useful tool to reformulate certain problems on points in the plane to lines in the plane, and vice versa Dualization of line segments is especially useful Arrangements, zones of lines in arrangements, and levels in arrangements are useful concepts in computational geometry All of this exists in three and higher dimensional spaces too

Computational Geometry Lecture 11: Arrangements and Duality