Top Banner
5/2/2007 Don Sheehy Overlay Stitch Meshing 1 Overlay Stitch Meshing Overlay Stitch Meshing
123

5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

Dec 15, 2015

Download

Documents

Jaydon Knightly
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

1

Overlay Stitch MeshingOverlay Stitch Meshing

Page 2: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

2

A competitive algorithm for A competitive algorithm for no-large-angle triangulationno-large-angle triangulation

Don SheehyDon Sheehy

Joint work with Gary Miller Joint work with Gary Miller and Todd Phillipsand Todd Phillips

To appear at ICALP 2007To appear at ICALP 2007

Page 3: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

3

The ProblemThe ProblemInput: A Planar Straight Line Input: A Planar Straight Line

GraphGraph

Page 4: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

4

The ProblemThe ProblemInput: A Planar Straight Line Input: A Planar Straight Line

GraphGraph

Output: A Conforming TriangulationOutput: A Conforming Triangulation

Page 5: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

5

The ProblemThe ProblemInput: A Planar Straight Line Input: A Planar Straight Line

GraphGraph

Output: A Conforming TriangulationOutput: A Conforming Triangulation

Page 6: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

6

Why would you want to do that?Why would you want to do that?

Page 7: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

7

Why would you want to do that?Why would you want to do that?

Page 8: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

8

Why would you want to do that?Why would you want to do that?

Page 9: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

9

Why would you want to do that?Why would you want to do that?

Page 10: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

10

Why would you want to do that?Why would you want to do that?

Page 11: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

11

Why would you want to do that?Why would you want to do that?

Page 12: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

12

Page 13: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

13

Page 14: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

14

Page 15: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

15

Page 16: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

16

Page 17: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

17

Page 18: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

18

What went wrong?What went wrong?

Page 19: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

19

What if you don’t know the function?What if you don’t know the function?

?? ??

Page 20: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

20

2 Definitions of Quality2 Definitions of Quality

1. No Large Angles [Babuska, Aziz 1. No Large Angles [Babuska, Aziz 1976]1976]

Page 21: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

21

2 Definitions of Quality2 Definitions of Quality

1. No Large Angles [Babuska, Aziz 1. No Large Angles [Babuska, Aziz 1976]1976]

2. No Small Angles2. No Small Angles

Page 22: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

22

No Small AnglesNo Small Angles

Page 23: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

23

No Small AnglesNo Small Angles

You may have heard of these You may have heard of these before.before.

Delaunay RefinementDelaunay Refinement

Sparse Voronoi RefinementSparse Voronoi Refinement

QuadtreeQuadtree

Page 24: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

24

Paying for the spreadPaying for the spread

Page 25: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

25

Paying for the spreadPaying for the spread

LL

ss

Spread = L/sSpread = L/s

Page 26: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

26

Paying for the spreadPaying for the spread

Optimal No-Large-Angle TriangulationOptimal No-Large-Angle Triangulation

Page 27: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

27

Paying for the spreadPaying for the spreadWhat if we don’t allow small angles?What if we don’t allow small angles?

Page 28: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

28

Paying for the spreadPaying for the spreadWhat if we don’t allow small angles?What if we don’t allow small angles?

Page 29: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

29

Paying for the spreadPaying for the spread

O(L/s)O(L/s) triangles! triangles!

What if we don’t allow small angles?What if we don’t allow small angles?

Page 30: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

30

Paying for the spreadPaying for the spread

O(L/s)O(L/s) triangles! triangles!

What if we don’t allow small angles?What if we don’t allow small angles?Fact: For inputs with Fact: For inputs with NO NO edgesedges, no-small-angle , no-small-angle

meshing algorithms produce meshing algorithms produce output with output with O(n log L/s)O(n log L/s) size size and angles between 30and angles between 30oo and and

120120oo

Page 31: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

31

What to do?What to do?

Page 32: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

32

What to do?What to do?

Small input angles can force even smaller Small input angles can force even smaller ouput angles. [Shewchuk ’02]ouput angles. [Shewchuk ’02]

Page 33: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

33

No Large AnglesNo Large Angles

Page 34: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

34

Polygons with HolesPolygons with Holes[Bern, Mitchell, Ruppert 95] – [Bern, Mitchell, Ruppert 95] –

- All triangles are - All triangles are nonobtuse. nonobtuse.

- Output has O(n) triangles.- Output has O(n) triangles.

Page 35: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

35

Polygons with HolesPolygons with Holes[Bern, Mitchell, Ruppert 95] – [Bern, Mitchell, Ruppert 95] –

- All triangles are - All triangles are nonobtuse. nonobtuse.

- Output has O(n) triangles.- Output has O(n) triangles.

Does not work for arbitrary PSLGsDoes not work for arbitrary PSLGs

Page 36: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

36

Paterson’s ExamplePaterson’s ExampleRequires Requires (n(n22) points.) points.

O(n) O(n) pointpoint

ss

O(n) O(n) lineline

ss

Page 37: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

37

Paterson’s ExamplePaterson’s ExampleRequires Requires (n(n22) points.) points.

O(n) O(n) pointpoint

ss

O(n) O(n) lineline

ss

Page 38: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

38

Paterson’s ExamplePaterson’s ExampleRequires Requires (n(n22) points.) points.

O(n) O(n) pointpoint

ss

O(n) O(n) lineline

ss

Page 39: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

39

Paterson’s ExamplePaterson’s ExampleRequires Requires (n(n22) points.) points.

O(n) O(n) pointpoint

ss

O(n) O(n) lineline

ss

Page 40: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

40

Paterson’s ExamplePaterson’s ExampleRequires Requires (n(n22) points.) points.

O(n) O(n) pointpoint

ss

O(n) O(n) lineline

ss

Page 41: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

41

Paterson’s ExamplePaterson’s ExampleRequires Requires (n(n22) points.) points.

O(n) O(n) pointpoint

ss

O(n) O(n) lineline

ss

Page 42: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

42

Propagating PathsPropagating Paths

Page 43: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

43

Propagating PathsPropagating Paths

Page 44: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

44

Propagating PathsPropagating Paths

Page 45: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

45

Propagating PathsPropagating Paths

Page 46: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

46

Propagating PathsPropagating Paths

Page 47: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

47

Propagating PathsPropagating Paths

First introduced by Mitchell [93]First introduced by Mitchell [93]

Page 48: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

48

Propagating PathsPropagating Paths

First introduced by Mitchell [93]First introduced by Mitchell [93]

Later Improved by Tan [96]Later Improved by Tan [96]

Page 49: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

49

Propagating PathsPropagating Paths

First introduced by Mitchell [93]First introduced by Mitchell [93]

Later Improved by Tan [96]Later Improved by Tan [96]

Worst Case Optimal Size O(nWorst Case Optimal Size O(n22))

Angle bounds: 132Angle bounds: 132oo

Page 50: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

50

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 51: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

51

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Results:Results:1.1. Angles bounded by 170Angles bounded by 170oo

2.2. O(log L/s) competitive sizeO(log L/s) competitive size

Page 52: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

52

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 53: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

53

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 54: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

54

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 55: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

55

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 56: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

56

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 57: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

57

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 58: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

58

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 59: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

59

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 60: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

60

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 61: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

61

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 62: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

62

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 63: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

63

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

Page 64: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

64

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

• An Overlay Edge is An Overlay Edge is keptkept if if1. It does not intersect the input,1. It does not intersect the input,

OROR

Page 65: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

65

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

• An Overlay Edge is An Overlay Edge is keptkept if if1. It does not intersect the input,1. It does not intersect the input,

OROR

2. It forms a 2. It forms a goodgood intersection with the intersection with the input.input.

Page 66: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

66

The OSM AlgorithmThe OSM Algorithm(Overlay Stitch Meshing)(Overlay Stitch Meshing)

• An Overlay Edge is An Overlay Edge is keptkept if if1. It does not intersect the input,1. It does not intersect the input,

OROR

2. It forms a 2. It forms a goodgood intersection with the intersection with the input.input.

at least 30at least 30oo

Page 67: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

67

Angle GuaranteesAngle Guarantees

Page 68: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

68

Angle GuaranteesAngle Guarantees

Page 69: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

69

Angle GuaranteesAngle Guarantees

We want to show that angles at We want to show that angles at stitchstitch vertices are bounded by vertices are bounded by

170170oo

Page 70: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

70

Angle GuaranteesAngle Guarantees

An Overlay TriangleAn Overlay Triangle

Page 71: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

71

Angle GuaranteesAngle Guarantees

An Overlay TriangleAn Overlay Triangle

An Overlay EdgeAn Overlay Edge

Page 72: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

72

Angle GuaranteesAngle Guarantees

An Overlay TriangleAn Overlay Triangle

An Overlay EdgeAn Overlay Edge

Gap BallGap Ball

Page 73: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

73

Angle GuaranteesAngle Guarantees

A Good IntersectionA Good Intersection

Page 74: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

74

Angle GuaranteesAngle Guarantees

A Bad IntersectionA Bad Intersection

Page 75: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

75

Angle GuaranteesAngle Guarantees

A Bad IntersectionA Bad Intersection

Page 76: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

76

Angle GuaranteesAngle Guarantees

A Bad IntersectionA Bad Intersection

Page 77: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

77

Angle GuaranteesAngle Guarantees

A Bad IntersectionA Bad Intersection

How Bad can it How Bad can it be?be?

Page 78: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

78

Angle GuaranteesAngle GuaranteesHow Bad can it How Bad can it

be?be?

Page 79: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

79

Angle GuaranteesAngle GuaranteesHow Bad can it How Bad can it

be?be?

Page 80: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

80

Angle GuaranteesAngle GuaranteesHow Bad can it How Bad can it

be?be?

About 10About 10oo

Page 81: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

81

Angle GuaranteesAngle GuaranteesHow Bad can it How Bad can it

be?be?

About 10About 10oo

About 170About 170oo

Page 82: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

82

Angle GuaranteesAngle GuaranteesHow Bad can it How Bad can it

be?be?

About 10About 10oo

Theorem: If any input Theorem: If any input edge makes a edge makes a goodgood intersection with an intersection with an overlay edge then any overlay edge then any other intersection on other intersection on that edge is that edge is not too not too badbad..

About 170About 170oo

Page 83: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

83

Size BoundsSize Bounds

Page 84: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

84

Size BoundsSize BoundsHow big is the resulting triangulation?How big is the resulting triangulation?

Page 85: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

85

Size BoundsSize BoundsHow big is the resulting triangulation?How big is the resulting triangulation?

Goal: log(L/s)-competitive with optimalGoal: log(L/s)-competitive with optimal

Page 86: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

86

Local Feature SizeLocal Feature Size

lfs(x) = distance to second nearest input vertex.lfs(x) = distance to second nearest input vertex.

xxlfs(x)lfs(x)

Note: lfs is defined on Note: lfs is defined on the whole plane before the whole plane before

we do any meshing.we do any meshing.

Page 87: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

87

Ruppert’s IdeaRuppert’s Idea

rr

cc

r = r = (lfs(c))(lfs(c))

area(area() = ) = (lfs(c)(lfs(c)22))

# of triangles = # of triangles = ((ssss 1/lfs(x,y) 1/lfs(x,y)22 dxdy) dxdy)

Page 88: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

88

Ruppert’s IdeaRuppert’s Idea

rr

cc

r = r = (lfs(c))(lfs(c))

area(area() = ) = (lfs(c)(lfs(c)22))

# of triangles = # of triangles = ((ssss 1/lfs(x,y) 1/lfs(x,y)22 dxdy) dxdy)

dydy

dxdxThis represents a This represents a (dxdy/lfs(x,y)(dxdy/lfs(x,y)22)) fraction of the fraction of the

triangle.triangle.

Page 89: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

89

Ruppert’s IdeaRuppert’s Idea

rr

cc

r = r = (lfs(c))(lfs(c))

area(area() = ) = (lfs(c)(lfs(c)22))

# of triangles = # of triangles = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy)

CaveatCaveat: Only Works for meshes : Only Works for meshes

with bounded with bounded smallestsmallest angle. angle.

Page 90: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

90

ExtendingExtending Ruppert’s Idea Ruppert’s Idea# of triangles = # of triangles = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy)

Page 91: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

91

ExtendingExtending Ruppert’s Idea Ruppert’s Idea

An input edge An input edge e e intersecting intersecting

the overlay meshthe overlay mesh

# of triangles = # of triangles = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy)

Page 92: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

92

ExtendingExtending Ruppert’s Idea Ruppert’s Idea

An input edge An input edge e e intersecting intersecting

the overlay meshthe overlay mesh

# of triangles along # of triangles along ee = = ((sszz22 e e lfs(z) lfs(z)-1-1 dz) dz)

# of triangles = # of triangles = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy)

Page 93: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

93

ExtendingExtending Ruppert’s Idea Ruppert’s Idea

Now we can compute the Now we can compute the size of our output mesh. We size of our output mesh. We just need to compute these just need to compute these

integrals.integrals.

# of triangles along # of triangles along ee = = ((sszz22 e e lfs(z) lfs(z)-1-1 dz) dz)

# of triangles = # of triangles = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy)

Page 94: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

94

Output SizeOutput Size

Stitch Vertices Added = Stitch Vertices Added = ((sszz22 E E lfs(z) lfs(z)-1-1 dz) dz)

Overlay Mesh Size = Overlay Mesh Size = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy)

Page 95: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

95

Output SizeOutput Size

Stitch Vertices Added = Stitch Vertices Added = ((sszz22 E E lfs(z) lfs(z)-1-1 dz) dz)

Overlay Mesh Size = Overlay Mesh Size = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy) O(n log L/s)O(n log L/s)

O(log L/s)O(log L/s)££ |OPT| |OPT|

Page 96: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

96

Output SizeOutput Size

Stitch Vertices Added = Stitch Vertices Added = ((sszz22 E E lfs(z) lfs(z)-1-1 dz) dz)

Overlay Mesh Size = Overlay Mesh Size = ((ssss lfs(x,y) lfs(x,y)-2-2 dxdy) dxdy) O(n log L/s)O(n log L/s)

O(log L/s)O(log L/s)££ |OPT| |OPT|

We’ll Prove this nowWe’ll Prove this now

Page 97: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

97

What can we say about the What can we say about the optimal optimal no-large-angle no-large-angle

triangulation?triangulation?

Page 98: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

98

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Page 99: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

99

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

9090oo

Page 100: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

100

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

??oo

Page 101: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

101

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Page 102: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

102

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Page 103: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

103

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Page 104: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

104

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Page 105: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

105

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Page 106: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

106

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Suppose we have a triangulation with all angles at least 170Suppose we have a triangulation with all angles at least 170oo..

Page 107: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

107

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Suppose we have a triangulation with all angles at least 170Suppose we have a triangulation with all angles at least 170oo..

the optimalthe optimal

Page 108: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

108

Competitive AnalysisCompetitive AnalysisWarm-upWarm-up

Suppose we have a triangulation with all angles at least 170Suppose we have a triangulation with all angles at least 170oo..

the optimalthe optimal Every input edge is Every input edge is covered by empty covered by empty

lenses.lenses.

Page 109: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

109

Competitive AnalysisCompetitive Analysis

Suppose we have a triangulation with all angles at least 170Suppose we have a triangulation with all angles at least 170oo..

the optimalthe optimal Every input edge is Every input edge is covered by empty covered by empty

lenses.lenses.

This is what we have to integrate over.This is what we have to integrate over.

Page 110: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

110

Competitive AnalysisCompetitive AnalysisThis is what we have to integrate over.This is what we have to integrate over.

We show that in each lens, we We show that in each lens, we put O(log (L/s)) points on the put O(log (L/s)) points on the

edge.edge.

Page 111: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

111

Competitive AnalysisCompetitive AnalysisThis is what we have to integrate over.This is what we have to integrate over.

We show that in each lens, we We show that in each lens, we put O(log (L/s)) points on the put O(log (L/s)) points on the

edge.edge.

In other words:In other words:

sse’e’ 1/lfs(z) dz = O(log (L/s)) 1/lfs(z) dz = O(log (L/s))

ee’’

Page 112: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

112

Competitive AnalysisCompetitive Analysis

ee’’

sszz22 e’ e’ 1/lfs(z) dz = O(log (L/s)) 1/lfs(z) dz = O(log (L/s))

Page 113: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

113

Competitive AnalysisCompetitive Analysis

ee’’

Parametrize e’ as [0, Parametrize e’ as [0, ll] where ] where ll = length(e’) = length(e’)

sszz22 e’ e’ 1/lfs(z) dz = O(log (L/s)) 1/lfs(z) dz = O(log (L/s))

Page 114: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

114

Competitive AnalysisCompetitive Analysis

ee’’

sszz22 e’ e’ 1/lfs(z) dz = O(log (L/s)) 1/lfs(z) dz = O(log (L/s))

Parametrize e’ as [0, Parametrize e’ as [0, ll]]

11stst trick: lfs trick: lfs ¸̧ s everywhere s everywhere

Page 115: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

115

Competitive AnalysisCompetitive Analysissszz22 e’ e’ 1/lfs(z) dz = O(log (L/s)) 1/lfs(z) dz = O(log (L/s))

ee’’

11stst trick: lfs trick: lfs ¸̧ s everywhere s everywhere

22ndnd trick: lfs trick: lfs ¸̧ ct for t ct for t22 [0, [0,ll/2]/2]

tt

Parametrize e’ as [0, Parametrize e’ as [0, ll]]

Page 116: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

116

Competitive AnalysisCompetitive Analysissszz22 e’ e’ 1/lfs(z) dz = O(log (L/s)) 1/lfs(z) dz = O(log (L/s))

ee’’

11stst trick: lfs trick: lfs ¸̧ s everywhere s everywhere

22ndnd trick: lfs trick: lfs ¸̧ ct for ct for tt22 [0, [0,ll/2]/2]

tt

sszz22 e’ e’ 1/lfs(z) dz 1/lfs(z) dz ·· 2 2ss00ss 1/s + 2 1/s + 2ssss

ll/2/2 1/x 1/x dx dx

= O(1) + O(log = O(1) + O(log ll/s)/s)

= O(log L/s)= O(log L/s)

Parametrize e’ as [0, Parametrize e’ as [0, ll]]

Page 117: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

117

ConclusionsConclusions

Page 118: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

118

ConclusionConclusion• A new algorithm for no-large-angle A new algorithm for no-large-angle

triangulation.triangulation.• The output has bounded degree The output has bounded degree

triangles.triangles.• The first log-competitive analysis for The first log-competitive analysis for

such an algorithm.such an algorithm.

Page 119: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

119

ConclusionConclusion• A new algorithm for no-large-angle A new algorithm for no-large-angle

triangulation.triangulation.• The output has bounded degree The output has bounded degree

triangles.triangles.• The first log-competitive analysis for The first log-competitive analysis for

such an algorithm.such an algorithm.• We used some of the high school We used some of the high school

calculus you thought you forgot.calculus you thought you forgot.

Page 120: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

120

Where to go from here?Where to go from here?• 3D?3D?

Page 121: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

121

Where to go from here?Where to go from here?• 3D?3D?• Better angle bounds?Better angle bounds?

Page 122: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

122

Where to go from here?Where to go from here?• 3D?3D?• Better angle bounds?Better angle bounds?• Leverage lower bound technology for Leverage lower bound technology for

constant competitive algorithm.constant competitive algorithm.

Page 123: 5/2/2007Don Sheehy Overlay Stitch Meshing 1. 5/2/2007Don Sheehy Overlay Stitch Meshing 2 A competitive algorithm for no-large-angle triangulation Don.

5/2/2007 Don SheehyOverlay Stitch Meshing

123

Thank you.Thank you.