6
1 Computational Geometry Point-Line Duality Michael Goodrich with slides from Carola Wenk

Computational Geometry

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computational Geometry

1

Computational Geometry

Point-Line DualityMichael Goodrich

with slides from Carola Wenk

Page 2: Computational Geometry

Point-Line DualityLet 𝑃 = 𝑝!, … , 𝑝" βŠ† ℝ# be a set of 𝑛 points. Now define a set π‘ƒβˆ— = 𝑝!βˆ—, … , 𝑝"βˆ—of 𝑛 lines as follows:

Primal planePoint: 𝑝 = (𝑝% , 𝑝&)Line: 𝑙: 𝑦 = π‘šπ‘₯ + 𝑏

Dual planeLine: π‘βˆ—: 𝑦 = 𝑝%π‘₯ βˆ’ 𝑝&Point: π‘™βˆ— = (π‘š,βˆ’π‘)

p1

p2

p3

p4

p*1

p*2

p*4

p*3

l2

l*2

l*1

l1

2

Page 3: Computational Geometry

Properties

p1

p2

p3

p4

p*1

p*2

p*4

p*3

l2

l*2

l*1

l1

β€’ π‘βˆ— βˆ— = 𝑝‒ 𝑝 ∈ 𝑙 ⇔ π‘™βˆ— ∈ π‘βˆ— incidence-preservingβ€’ 𝑝 lies above 𝑙 ⇔ π‘™βˆ— lies above π‘βˆ—

Primal Dual

β€’ p1 Îl2Γ› l*2 Îp*1β€’ p3 is above l1Γ› l*1 is above p*3

3

Primal planePoint: 𝑝 = (𝑝% , 𝑝&)Line: 𝑙: 𝑦 = π‘šπ‘₯ + 𝑏

Dual planeLine: π‘βˆ—: 𝑦 = 𝑝%π‘₯ βˆ’ 𝑝&Point: π‘™βˆ— = (π‘š,βˆ’π‘)

Page 4: Computational Geometry

PropertiesPrimal Dual

p1

p2

l1

p*1

p*2

l*1

4

β€’ Points 𝑝! and 𝑝# lie on line 𝑙!

β€’ Lines 𝑝!βˆ— and 𝑝#βˆ— contain point 𝑙!βˆ—

Primal planePoint: 𝑝 = (𝑝% , 𝑝&)Line: 𝑙: 𝑦 = π‘šπ‘₯ + 𝑏

Dual planeLine: π‘βˆ—: 𝑦 = 𝑝%π‘₯ βˆ’ 𝑝&Point: π‘™βˆ— = (π‘š,βˆ’π‘)

Page 5: Computational Geometry

Point-Line Duality Puzzle

5

l1 l2p1

p2p3

p4

p*1

p*2

p*4

l*2

l*1

p*3

𝑝! lies above 𝑙!𝑝# lies on 𝑙!𝑝# lies on 𝑙#𝑝' lies below 𝑙!𝑝( lies above 𝑙#

𝑝!βˆ—lies above𝑙!βˆ—

𝑝#βˆ—lies onlies on𝑙#βˆ—

lies belowlies above

𝑙!βˆ—π‘#βˆ—

𝑝'βˆ—π‘™!βˆ—π‘(βˆ—π‘™#βˆ—

⇔⇔⇔⇔⇔

Page 6: Computational Geometry

LCH @ UEPrimal Dual

p1

p2

p3p4

p5

p*1p*2

p*3

p*4

p*5

β€’ LCH = p1, p2, p3, p4, p5β€’ UE = p*1, p*2, p*3, p*4, p*5

LCH lower convex hull UE upper envelope (= pointwise maximum)= halfplane intersection (of upper halfplanes)

6

Primal planePoint: 𝑝 = (𝑝% , 𝑝&)Line: 𝑙: 𝑦 = π‘šπ‘₯ + 𝑏

Dual planeLine: π‘βˆ—: 𝑦 = 𝑝%π‘₯ βˆ’ 𝑝&Point: π‘™βˆ— = (π‘š,βˆ’π‘)