Width-Optimal Visibility Representations of Plane Graphs Speaker: - - PowerPoint PPT Presentation

width optimal visibility representations of plane graphs
SMART_READER_LITE
LIVE PREVIEW

Width-Optimal Visibility Representations of Plane Graphs Speaker: - - PowerPoint PPT Presentation

Width-Optimal Visibility Representations of Plane Graphs Speaker: Chun-Cheng Lin Coauthors: Jia-Hao Fan Hsueh-I Lu Hsu-Chun Yen National Taiwan University, Taipei, Taiwan (Presented at the 18th International Symposium on Algorithms and


slide-1
SLIDE 1

Width-Optimal Visibility Representations of Plane Graphs

Speaker: Chun-Cheng Lin Coauthors: Jia-Hao Fan Hsueh-I Lu Hsu-Chun Yen National Taiwan University, Taipei, Taiwan (Presented at the 18th International Symposium on Algorithms and Computation (ISAAC 2007))

1/19

slide-2
SLIDE 2

Outline

1

Introduction

2

Preliminaries

3

Our Width-Optimal Drawing Algorithm

4

Analysis

5

Conclusion

2/19

slide-3
SLIDE 3

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation Node segment Edge segment Measuring the drawing area in a grid

5 9 1 3 2 7 6 4 8 5 9 1 3 2 7 6 4 8

3/19

slide-4
SLIDE 4

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation Node segment Edge segment Measuring the drawing area in a grid

5 9 1 3 2 7 6 4 8 5 9 1 3 2 7 6 4 8

3/19

slide-5
SLIDE 5

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation Node segment Edge segment Measuring the drawing area in a grid

5 9 1 3 2 7 6 4 8 5 9 1 3 2 7 6 4 8

3/19

slide-6
SLIDE 6

Introduction

Visibility Representation (a.k.a., Visibility Drawing)

Visibility Representation Node segment Edge segment Measuring the drawing area in a grid

5 9 1 3 2 7 6 4 8 5 9 1 3 2 7 6 4 8

3/19

slide-7
SLIDE 7

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)

first known algorithm for visibility drawings; no bound for the compactness of the output.

worst-case upper bound required height required width n−1

(Rosenstiehl & Tarjan, 1986;

2n−5

(Rosenstiehl & Tarjan,1986; Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

⌊ 15n

16 ⌋ (Zhang & He, 2003) Nummenmaa, 1992)

⌊ 5n

6 ⌋ (Zhang & He, 2005)

⌊ 22n−42

15

(Lin, Lu, and Sun, 2004)

⌊ 4n−1

5

(Zhang & He, 2006)

⌊ 13n−24

9

(Zhang & He, 2005) 2n 3 +2⌈

  • n/2⌉

(He & Zhang, 2006) 4n 3 +2⌈√n⌉ (He & Zhang, 2006)

lower bound

The size of the required area is at least ⌊ 2n 3 ⌋×(⌊ 4n 3 ⌋−3) (Zhang & He, 2005) 4/19

slide-8
SLIDE 8

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)

first known algorithm for visibility drawings; no bound for the compactness of the output.

worst-case upper bound required height required width n−1

(Rosenstiehl & Tarjan, 1986;

2n−5

(Rosenstiehl & Tarjan,1986; Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

⌊ 15n

16 ⌋ (Zhang & He, 2003) Nummenmaa, 1992)

⌊ 5n

6 ⌋ (Zhang & He, 2005)

⌊ 22n−42

15

(Lin, Lu, and Sun, 2004)

⌊ 4n−1

5

(Zhang & He, 2006)

⌊ 13n−24

9

(Zhang & He, 2005) 2n 3 +2⌈

  • n/2⌉

(He & Zhang, 2006) 4n 3 +2⌈√n⌉ (He & Zhang, 2006)

lower bound

The size of the required area is at least ⌊ 2n 3 ⌋×(⌊ 4n 3 ⌋−3) (Zhang & He, 2005) 4/19

slide-9
SLIDE 9

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)

first known algorithm for visibility drawings; no bound for the compactness of the output.

worst-case upper bound required height required width n−1

(Rosenstiehl & Tarjan, 1986;

2n−5

(Rosenstiehl & Tarjan,1986; Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

⌊ 15n

16 ⌋ (Zhang & He, 2003) Nummenmaa, 1992)

⌊ 5n

6 ⌋ (Zhang & He, 2005)

⌊ 22n−42

15

(Lin, Lu, and Sun, 2004)

⌊ 4n−1

5

(Zhang & He, 2006)

⌊ 13n−24

9

(Zhang & He, 2005) 2n 3 +2⌈

  • n/2⌉

(He & Zhang, 2006) 4n 3 +2⌈√n⌉ (He & Zhang, 2006)

lower bound

The size of the required area is at least ⌊ 2n 3 ⌋×(⌊ 4n 3 ⌋−3) (Zhang & He, 2005)

Lin, Lu, and Sun (2004) conjectured ...

no wider than 4n

3 +O(1).

4/19

slide-10
SLIDE 10

Introduction

Compactness of Visibility Representation

Otten and van Wijk (1978)

first known algorithm for visibility drawings; no bound for the compactness of the output.

worst-case upper bound required height required width n−1

(Rosenstiehl & Tarjan, 1986;

2n−5

(Rosenstiehl & Tarjan,1986; Tamassia & Tollis, 1986) Tamassia & Tollis, 1986;

⌊ 15n

16 ⌋ (Zhang & He, 2003) Nummenmaa, 1992)

⌊ 5n

6 ⌋ (Zhang & He, 2005)

⌊ 22n−42

15

(Lin, Lu, and Sun, 2004)

⌊ 4n−1

5

(Zhang & He, 2006)

⌊ 13n−24

9

(Zhang & He, 2005) 2n 3 +2⌈

  • n/2⌉

(He & Zhang, 2006) 4n 3 +2⌈√n⌉ (He & Zhang, 2006)

lower bound

The size of the required area is at least ⌊ 2n 3 ⌋×(⌊ 4n 3 ⌋−3) (Zhang & He, 2005)

Lin, Lu, and Sun (2004) conjectured ...

no wider than 4n

3 +O(1).

4/19

slide-11
SLIDE 11

Introduction

Our Main Result

Theorem Given an n-node plane triangulation G, a visibility drawing of G with its width bounded by ⌊ 4n

3 ⌋−2 can be obtained in time O(n).

Our bound is the optimal because our bound differs the previously known lower bound

4n 3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004] about whether any visibility drawing no wider than 4n

3 +O(1) can

be obtained in polynomial time. Rather than conventionally using canonical ordering, st-numbering, or Schnyder’s realizer as the initial input, our algorithm applies a new kind of ordering, called constructive

  • rdering, of G to constructing the visibility drawing.

5/19

slide-12
SLIDE 12

Introduction

Our Main Result

Theorem Given an n-node plane triangulation G, a visibility drawing of G with its width bounded by ⌊ 4n

3 ⌋−2 can be obtained in time O(n).

Our bound is the optimal because our bound differs the previously known lower bound

4n 3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004] about whether any visibility drawing no wider than 4n

3 +O(1) can

be obtained in polynomial time. Rather than conventionally using canonical ordering, st-numbering, or Schnyder’s realizer as the initial input, our algorithm applies a new kind of ordering, called constructive

  • rdering, of G to constructing the visibility drawing.

5/19

slide-13
SLIDE 13

Introduction

Our Main Result

Theorem Given an n-node plane triangulation G, a visibility drawing of G with its width bounded by ⌊ 4n

3 ⌋−2 can be obtained in time O(n).

Our bound is the optimal because our bound differs the previously known lower bound

4n 3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004] about whether any visibility drawing no wider than 4n

3 +O(1) can

be obtained in polynomial time. Rather than conventionally using canonical ordering, st-numbering, or Schnyder’s realizer as the initial input, our algorithm applies a new kind of ordering, called constructive

  • rdering, of G to constructing the visibility drawing.

5/19

slide-14
SLIDE 14

Introduction

Our Main Result

Theorem Given an n-node plane triangulation G, a visibility drawing of G with its width bounded by ⌊ 4n

3 ⌋−2 can be obtained in time O(n).

Our bound is the optimal because our bound differs the previously known lower bound

4n 3 −3 (Zhang and He, 2005) only by a unit.

Answering in the affirmative a conjecture of [Lin, Lu, Sun, 2004] about whether any visibility drawing no wider than 4n

3 +O(1) can

be obtained in polynomial time. Rather than conventionally using canonical ordering, st-numbering, or Schnyder’s realizer as the initial input, our algorithm applies a new kind of ordering, called constructive

  • rdering, of G to constructing the visibility drawing.

5/19

slide-15
SLIDE 15

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1 1

vr vp = u vq vk+1 Fk,1 vr vp = u vq in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2 2

vr vp = u vs vq Fk,2 Fk,1 vr vp = u vs vq vk+1 in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3 3

vr vp = u vt vq Fk,2 Fk,1 Fk,3 vs vk+1 vr vp = u vt vq vs 6/19

slide-16
SLIDE 16

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3 3

vr vp = u vt vq Fk,2 Fk,1 Fk,3 vs vk+1 vr vp = u vt vq vs

When deg(vk+1) = 5, α3(vk+1,u) = coalescing two nodes vk+1 and u β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

6/19

slide-17
SLIDE 17

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1 1

vr vp = u vq vk+1 Fk,1 vr vp = u vq in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2 2

vr vp = u vs vq Fk,2 Fk,1 vr vp = u vs vq vk+1 in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3 3

vr vp = u vt vq Fk,2 Fk,1 Fk,3 vs vk+1 vr vp = u vt vq vs

When deg(vk+1) = 5, α3(vk+1,u) = coalescing two nodes vk+1 and u β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3

6/19

slide-18
SLIDE 18

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1 1

vr vp = u vq vk+1 Fk,1 vr vp = u vq in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2 2

vr vp = u vs vq Fk,2 Fk,1 vr vp = u vs vq vk+1 in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3 3

vr vp = u vt vq Fk,2 Fk,1 Fk,3 vs vk+1 vr vp = u vt vq vs

When deg(vk+1) = 5, α3(vk+1,u) = coalescing two nodes vk+1 and u ≡ detaching two faces β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3 ≡ attaching two new faces

6/19

slide-19
SLIDE 19

Preliminaries

Coalescing and Splitting Operations

in Gk+1 in Gk

(a) deg(vk+1) = 3 in Gk+1

1 1

vr vp = u vq vk+1 Fk,1 vr vp = u vq in Gk+1 in Gk

(b) deg(vk+1) = 4 in Gk+1

2 2

vr vp = u vs vq Fk,2 Fk,1 vr vp = u vs vq vk+1 in Gk+1 in Gk

(c) deg(vk+1) = 5 in Gk+1

3 3

vr vp = u vt vq Fk,2 Fk,1 Fk,3 vs vk+1 vr vp = u vt vq vs

When deg(vk+1) = 5, α3(vk+1,u) = coalescing two nodes vk+1 and u ≡ detaching two faces β3(vk+1,Fk,1,Fk,2,Fk,3) = splitting node vk+1 at faces Fk,1,Fk,2,Fk,3 ≡ attaching two new faces ≡ inserting a node at faces Fk,1,Fk,2,Fk,3

6/19

slide-20
SLIDE 20

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition Gk involves the k nodes v1,v2,...,vk. We call π = (v1,v2,...,vn) a constructive ordering

  • f a plane triangulation G if the following conditions hold for each k, 3 ≤ k ≤ n:

1

Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;

2

if 3 ≤ k ≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node vk+1 is three, four, or five in Gk+1. G6 = G

1 3 2 5 4 6

7/19

slide-21
SLIDE 21

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition Gk involves the k nodes v1,v2,...,vk. We call π = (v1,v2,...,vn) a constructive ordering

  • f a plane triangulation G if the following conditions hold for each k, 3 ≤ k ≤ n:

1

Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;

2

if 3 ≤ k ≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node vk+1 is three, four, or five in Gk+1. G6 = G

1 3 2 5 4 6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

7/19

slide-22
SLIDE 22

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition Gk involves the k nodes v1,v2,...,vk. We call π = (v1,v2,...,vn) a constructive ordering

  • f a plane triangulation G if the following conditions hold for each k, 3 ≤ k ≤ n:

1

Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;

2

if 3 ≤ k ≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node vk+1 is three, four, or five in Gk+1. G5

1 3 2 5 4 5 3 3

G6 = G

1 3 2 5 4 6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

7/19

slide-23
SLIDE 23

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition Gk involves the k nodes v1,v2,...,vk. We call π = (v1,v2,...,vn) a constructive ordering

  • f a plane triangulation G if the following conditions hold for each k, 3 ≤ k ≤ n:

1

Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;

2

if 3 ≤ k ≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node vk+1 is three, four, or five in Gk+1. G4

1 3 2 4 2 2

G5

1 3 2 5 4 5 3 3

G6 = G

1 3 2 5 4 6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

7/19

slide-24
SLIDE 24

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition Gk involves the k nodes v1,v2,...,vk. We call π = (v1,v2,...,vn) a constructive ordering

  • f a plane triangulation G if the following conditions hold for each k, 3 ≤ k ≤ n:

1

Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;

2

if 3 ≤ k ≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node vk+1 is three, four, or five in Gk+1.

1 3 2

G3

1 1

G4

1 3 2 4 2 2

G5

1 3 2 5 4 5 3 3

G6 = G

1 3 2 5 4 6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation.

7/19

slide-25
SLIDE 25

Preliminaries

Constructive Ordering of a Plane Triangulation

Definition Gk involves the k nodes v1,v2,...,vk. We call π = (v1,v2,...,vn) a constructive ordering

  • f a plane triangulation G if the following conditions hold for each k, 3 ≤ k ≤ n:

1

Gk is a plane triangulation with outer edges v1v2, v2v3, v3v1;

2

if 3 ≤ k ≤ n−1, then node vk+1 is split from a node in Gk, and the degree of node vk+1 is three, four, or five in Gk+1.

1 3 2

G3

1 1

G4

1 3 2 4 2 2

G5

1 3 2 5 4 5 3 3

G6 = G

1 3 2 5 4 6

Note that there always exists a node with degree 3, 4, or 5 in any plane triangulation. Lemma Every n-node plane triangulation G has a constructive ordering, which can be found in O(n) time.

7/19

slide-26
SLIDE 26

Our Width-Optimal Drawing Algorithm

L-Shape and the β1 Operation

L-shape

Regular L-shape Degenerated L-shape right L-shape left L-shape

8/19

slide-27
SLIDE 27

Our Width-Optimal Drawing Algorithm

L-Shape and the β1 Operation

L-shape

Regular L-shape Degenerated L-shape right L-shape left L-shape

The β1 operation (the degree-three splitting operation)

1

Fk,1 vp vq vr wb = 1 wb + 2 vk+1 vp vq vr

(ii) For L-shapes with wb = 1

wb + 1 vk+1 vp vq vr

1

Fk,1 vp vq vr wb

(i) For L-sahpes with wb >1

Fk,1 vp vq vr wb

  • r

8/19

slide-28
SLIDE 28

Our Width-Optimal Drawing Algorithm

The β2 Operation acting at two narrowest L-shapes

The β2 operation (the degree-four splitting operation)

(1-iii) lr: This case does not exist. (1-iv) ll: This case is a reflectional

symmetry of case (1-i).

(1-i) rr (1-ii) rl (2-i) rr (2-ii) rl

(y(vs) and y(vq) may not necessarily be the same.)

(2-iv) ll: This case is a reflectional

symmetry of case (2-i).

(a) The two input L-shapes do not share the same bottom node segment. (b) The two input L-shapes share the same bottom node segment.

vk+1 vs vp vr vq vq vp vs vr vk+1 vp vq vr vs vk+1 f1’ f2’ f1 f2 vp vq vr vs vk+1 f1’ f2’ f1 f2 vk+1 vq vr vs vp f1’ f2’ f1 f2 vq vp vs vr Fk,1 Fk,2 vr vs vp vq Fk,1Fk,2 vp vq vr vs Fk,2Fk,1 vp vq vr vs Fk,2 Fk,1 vp vq vr vs Fk,2 Fk,1

2 2 2 2 2

(2-iii) lr

9/19

slide-29
SLIDE 29

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (1/3)

The degree-five splitting operation (1/3)

(2v-ii) rl: This case has the above

two possible subcases.

(2v-i) rr: This case has the above

two possible subcases.

(2v-iii) lr: This case is a reflectional symmetry of the case (2v-ii). (2v-iv) ll: This case is a reflectional symmetry of the case (2v-i).

vr vs vt vq Fk,2 Fk,3 Fk,1 vp vr vs vt vq Fk,2 Fk,3 Fk,1 vp vk+1 vr vs vt vq vp vr vs vt vq vp vk+1 vr vs vt vq Fk,2 Fk,3 Fk,1 vp vr vs vt vq vp vk+1 vr vs vt vq vp Fk,2 Fk,3 Fk,1 vr vs vt vq vp vk+1

(2v-i-a) (2v-i-b) (2v-ii-a) (2v-ii-b)

3 3 3 3

(3-vi) lrl (3-ii) rrl (3-v) lrr (3-i) rrr (3-iii) rlr: This case is a reflectional symmetry of the case (3-vi). (3-iv) rll: This case is a reflectional symmetry of the case (3-ii). (3-vii) llr: This case is a reflectional symmetry of the case (3-v). (3-viii) lll: This case is a reflectional symmetry of the case (3-i).

vk+1 vq vr vt vs vp vk+1 vq vs vt vp vr vp vq vs vt vk+1 vr vp vq vr vt vk+1 vs vp vq vs vt Fk,2 Fk,1 Fk,3 vr vp vq vr vt Fk,2 Fk,1 Fk,3 vs vp vq vr vt Fk,2 Fk,1 Fk,3 vs vp vq vs vt Fk,2 Fk,1 Fk,3 vr

3 3 3 3

(a) Only two input L-shapes are visible from the down side. (b) All of the three input L-shapes share the same bottom node segment.

10/19

slide-30
SLIDE 30

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (2/3)

The degree-five splitting operation (2/3)

(c) Two of the three input L-shapes share the same bottom node segment.

(2-viii) lll: This case is a reflectional

symmetry of the case (2-i).

(2-iv) rll: This case is a reflectional

symmetry of the case (2-ii).

(2-v) lrr (2-vii) llr: This case is a reflectional

symmetry of the case (2-v).

3

(2-iii) rlr: This case is a reflectional

symmetry of the case (2-vi). vt vp vq vs Fk,2 Fk,1 Fk,3 vr vt vp vq vs Fk,1 Fk,3Fk,2 vr vp vq vs vt Fk,2 Fk,1 Fk,3 vr vk+1 vq vs vt vp vr vr vs vt vq Fk,2 Fk,3 Fk,1 vp vk+1 vt vq vs vr vr vs vt vq Fk,2 Fk,3 Fk,1 vp vr vs vt vq vp vk+1 vt vk+1 vq vs vp vr vr vs vt vq Fk,2 Fk,3 Fk,1 vp vr vs vp vq Fk,2 Fk,3 Fk,1 vt vr vs vk+1 vq vt vp vr vs vt vq vp vk+1

(2-i-a) (2-i-b) (2-ii-a) (2-ii-b)

vp vq vr vt Fk,2 Fk,1 Fk,3 vs vp vq vr vt vp vs

(2-ii-c) (2-vi-a) (2-vi-b)

vr vs vt vq vk+1 vp

3 3 3 3 3 3 3

11/19

slide-31
SLIDE 31

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (3/3)

The degree-five splitting operation (3/3)

(d) None of the three input L-shapes shares the same bottom node segment.

(1-vi) lrl: This case does not exist. (1-viii) lll: This case is a reflectional symmetry of case (1-i). (1-iv) rll: This case is a reflectional symmetry of case (1-ii). (1-vii) llr: This case does not exist. (1-i) rrr (1-iii) rlr: This case does not exist. (1-v) lrr: This case does not exist.

vr vs vt vq vp vk+1 vr vs vt vq Fk,2 Fk,3 Fk,1 vp vp vq vr vt Fk,2 Fk,1 Fk,3 vs vr vs vt vq vk+1 vp vk+1 vq vr vt vs vp

(1-ii-a) rrl (1-ii-b) rrl

vr vs vt vq Fk,2 Fk,3 Fk,1 vp

3 3 3

12/19

slide-32
SLIDE 32

Our Width-Optimal Drawing Algorithm

The β3 Operation acting at three narrowest L-shapes (3/3)

The degree-five splitting operation (3/3)

(d) None of the three input L-shapes shares the same bottom node segment.

(1-vi) lrl: This case does not exist. (1-viii) lll: This case is a reflectional symmetry of case (1-i). (1-iv) rll: This case is a reflectional symmetry of case (1-ii). (1-vii) llr: This case does not exist. (1-i) rrr (1-iii) rlr: This case does not exist. (1-v) lrr: This case does not exist.

vr vs vt vq vp vk+1 vr vs vt vq Fk,2 Fk,3 Fk,1 vp vp vq vr vt Fk,2 Fk,1 Fk,3 vs vr vs vt vq vk+1 vp vk+1 vq vr vt vs vp

(1-ii-a) rrl (1-ii-b) rrl

vr vs vt vq Fk,2 Fk,3 Fk,1 vp

3 3 3

Observation If every inner face in Gk is drawn as an L-shape, then we consider all the possible cases of the β1, β2, and β3 operations. Furthermore, the bottom node segment of any L-shape rather than input L-shapes is not modified in executing the operation.

12/19

slide-33
SLIDE 33

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1 3 2 5 4 6

G6 = G

13/19

slide-34
SLIDE 34

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1

Find a constructive ordering of G.

1 3 2

G3

1 1 1 3 2 4

G4

2 2 1 3 2 5 4 5

G5

3 3 1 3 2 5 4 6

G6 = G

13/19

slide-35
SLIDE 35

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1

Find a constructive ordering of G.

1 3 2

G3

1 1 1 3 2 4

G4

2 2 1 3 2 5 4 5

G5

3 3 1 3 2 5 4 6

G6 = G

2

Initially, generate all the (six) possible visibility drawings of G3.

1st pair 1 2 D1 3 2 1 3 D2 2nd pair 2 1 3 D4 2 3 1 D3 3rd pair 3 1 2 D5 3 2 1 D6

13/19

slide-36
SLIDE 36

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1

Find a constructive ordering of G.

1 3 2

G3

1 1 1 3 2 4

G4

2 2 1 3 2 5 4 5

G5

3 3 1 3 2 5 4 6

G6 = G

2

Initially, generate all the (six) possible visibility drawings of G3.

3

For each insertion, use our splitting operations to maintain 6 drawings of Gk; appropriately adjust the drawings of the other faces.

1st pair 1 2 D1 3 2 1 3 D2 2nd pair 2 1 3 D4 2 3 1 D3 3rd pair 3 1 2 D5 3 2 1 D6 1 3 2 4 2 1 3 4 3 2 1 4 1 3 2 4 2 1 3 4 3 2 1 4 1st pair 3rd pair 2nd pair 1

13/19

slide-37
SLIDE 37

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1

Find a constructive ordering of G.

1 3 2

G3

1 1 1 3 2 4

G4

2 2 1 3 2 5 4 5

G5

3 3 1 3 2 5 4 6

G6 = G

2

Initially, generate all the (six) possible visibility drawings of G3.

3

For each insertion, use our splitting operations to maintain 6 drawings of Gk; appropriately adjust the drawings of the other faces.

1st pair 1 2 D1 3 2 1 3 D2 2nd pair 2 1 3 D4 2 3 1 D3 3rd pair 3 1 2 D5 3 2 1 D6 1 3 2 4 2 1 3 4 3 2 1 4 1 3 2 4 2 1 3 4 3 2 1 4 1st pair 3rd pair 2nd pair 1 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1st pair 2nd pair 3rd pair 2

13/19

slide-38
SLIDE 38

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1

Find a constructive ordering of G.

1 3 2

G3

1 1 1 3 2 4

G4

2 2 1 3 2 5 4 5

G5

3 3 1 3 2 5 4 6

G6 = G

2

Initially, generate all the (six) possible visibility drawings of G3.

3

For each insertion, use our splitting operations to maintain 6 drawings of Gk; appropriately adjust the drawings of the other faces.

1st pair 1 2 D1 3 2 1 3 D2 2nd pair 2 1 3 D4 2 3 1 D3 3rd pair 3 1 2 D5 3 2 1 D6 1 3 2 4 2 1 3 4 3 2 1 4 1 3 2 4 2 1 3 4 3 2 1 4 1st pair 3rd pair 2nd pair 1 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1st pair 2nd pair 3rd pair 2 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6 3 2 1 4 5 6 1 3 2 4 5 6 2 1 3 5 4 6 1st pair 2nd pair 3rd pair 3

13/19

slide-39
SLIDE 39

Our Width-Optimal Drawing Algorithm

Our Drawing Algorithm

1

Find a constructive ordering of G.

1 3 2

G3

1 1 1 3 2 4

G4

2 2 1 3 2 5 4 5

G5

3 3 1 3 2 5 4 6

G6 = G

2

Initially, generate all the (six) possible visibility drawings of G3.

3

For each insertion, use our splitting operations to maintain 6 drawings of Gk; appropriately adjust the drawings of the other faces.

1st pair 1 2 D1 3 2 1 3 D2 2nd pair 2 1 3 D4 2 3 1 D3 3rd pair 3 1 2 D5 3 2 1 D6 1 3 2 4 2 1 3 4 3 2 1 4 1 3 2 4 2 1 3 4 3 2 1 4 1st pair 3rd pair 2nd pair 1 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1st pair 2nd pair 3rd pair 2 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6 3 2 1 4 5 6 1 3 2 4 5 6 2 1 3 5 4 6 1st pair 2nd pair 3rd pair 3

4

Compress the width of every of the six drawings of Gn as much as possible. Output the drawing with the narrowest width.

13/19

slide-40
SLIDE 40

Analysis

Six Drawings = ⇒ Three Pairs

Observation The six drawings of every face F can be classified into three pairs, where each node of F serves as a bottom node segment in each pair. Furthermore, the input L-shapes of every splitting operation can be classified into three pairs.

1st pair 1 2 D1 3 2 1 3 D2 2nd pair 2 1 3 D4 2 3 1 D3 3rd pair 3 1 2 D5 3 2 1 D6 1 3 2 4 2 1 3 4 3 2 1 4 1 3 2 4 2 1 3 4 3 2 1 4 1st pair 3rd pair 2nd pair 1 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 1st pair 2nd pair 3rd pair 2 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6 3 2 1 4 5 6 1 3 2 4 5 6 2 1 3 5 4 6 1st pair 2nd pair 3rd pair 3

14/19

slide-41
SLIDE 41

Analysis

Six Drawings = ⇒ Three Pairs

Observation The six drawings of every face F can be classified into three pairs, where each node of F serves as a bottom node segment in each pair. Furthermore, the input L-shapes of every splitting operation can be classified into three pairs.

1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 1 3 2 4 5 6 2 1 3 5 4 6 1st pair 2nd pair 3rd pair 1st pair 2nd pair 3rd pair 3 1 3 2 4 5 1 3 2 4 6 5

Gk+1 Gk

3

14/19

slide-42
SLIDE 42

Analysis

Six Drawings = ⇒ Three Pairs

Observation The six drawings of every face F can be classified into three pairs, where each node of F serves as a bottom node segment in each pair. Furthermore, the input L-shapes of every splitting operation can be classified into three pairs.

1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 1 3 2 4 5 6 2 1 3 5 4 6 1st pair 2nd pair 3rd pair 1st pair 2nd pair 3rd pair 3 1 3 2 4 5 1 3 2 4 6 5

Gk+1 Gk

3

14/19

slide-43
SLIDE 43

Analysis

Six Drawings = ⇒ Three Pairs

Observation The six drawings of every face F can be classified into three pairs, where each node of F serves as a bottom node segment in each pair. Furthermore, the input L-shapes of every splitting operation can be classified into three pairs.

1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 1 3 2 4 5 6 2 1 3 5 4 6 1st pair 2nd pair 3rd pair 1st pair 2nd pair 3rd pair 3 1 3 2 4 5 1 3 2 4 6 5

Gk+1 Gk

3

Note that the two drawings in a pair are almost the same except for the positions

  • f the topmost two node segments, so it suffices to concern one of the two

drawings.

14/19

slide-44
SLIDE 44

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3 a1 ai+2 a2 ai+1 ... ... Fk,1 Fk,i

in Gk in Gk+1

a2 a1 ai+2 a1 ai+1 ... ai+3 f1’ f2’

i

(a)

a1 ...... x y ai+3 ... a1 ... x y ai+3

i i

...

i

a1 a2 a3 Fk,1 Fk,i ai+2 ... ai+1 ... a1 a2 a3 ai+2 ai+3 ... ai+1 ... f1’ f2’ All configurations of i adjacent L-shapes with the same bottom node segment exist. Here illust- rates only the configuration rr...r. No two L-shapes share the same bottom node segment;

  • therwise, it violates Observation 2. Thus, there exist
  • nly four possible configurations rr...r, rr...rl, ll...l, rll...l.

Here illustrate configurations rr...r, rr...rl. a1 ...... ... a1 ...

  • r

15/19

slide-45
SLIDE 45

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3 a1 ai+2 a2 ai+1 ... ... Fk,1 Fk,i

in Gk in Gk+1

a2 a1 ai+2 a1 ai+1 ... ai+3 f1’ f2’

i

(a)

a1 ...... x y ai+3 ... a1 ... x y ai+3

i i

...

i

a1 a2 a3 Fk,1 Fk,i ai+2 ... ai+1 ... a1 a2 a3 ai+2 ai+3 ... ai+1 ... f1’ f2’ All configurations of i adjacent L-shapes with the same bottom node segment exist. Here illust- rates only the configuration rr...r. No two L-shapes share the same bottom node segment;

  • therwise, it violates Observation 2. Thus, there exist
  • nly four possible configurations rr...r, rr...rl, ll...l, rll...l.

Here illustrate configurations rr...r, rr...rl. a1 ...... ... a1 ...

  • r

(width + 2) (width + 1) (width + 1) 15/19

slide-46
SLIDE 46

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3 a1 ai+2 a2 ai+1 ... ... Fk,1 Fk,i

in Gk in Gk+1

a2 a1 ai+2 a1 ai+1 ... ai+3 f1’ f2’

i

(a)

a1 ...... x y ai+3 ... a1 ... x y ai+3

i i

...

i

a1 a2 a3 Fk,1 Fk,i ai+2 ... ai+1 ... a1 a2 a3 ai+2 ai+3 ... ai+1 ... f1’ f2’ All configurations of i adjacent L-shapes with the same bottom node segment exist. Here illust- rates only the configuration rr...r. No two L-shapes share the same bottom node segment;

  • therwise, it violates Observation 2. Thus, there exist
  • nly four possible configurations rr...r, rr...rl, ll...l, rll...l.

Here illustrate configurations rr...r, rr...rl. a1 ...... ... a1 ...

  • r

(width + 2) (width + 1) (width + 1)

= ⇒ The sum of widths of six drawings is increased by 2×(+2+1+1) = +8 units.

15/19

slide-47
SLIDE 47

Analysis

U-Shaped Insertion

(b) 1st pair (c) 2nd pair or 3rd pair

a3 a1 ai+2 a2 ai+1 ... ... Fk,1 Fk,i

in Gk in Gk+1

a2 a1 ai+2 a1 ai+1 ... ai+3 f1’ f2’

i

(a)

a1 ...... x y ai+3 ... a1 ... x y ai+3

i i

...

i

a1 a2 a3 Fk,1 Fk,i ai+2 ... ai+1 ... a1 a2 a3 ai+2 ai+3 ... ai+1 ... f1’ f2’ All configurations of i adjacent L-shapes with the same bottom node segment exist. Here illust- rates only the configuration rr...r. No two L-shapes share the same bottom node segment;

  • therwise, it violates Observation 2. Thus, there exist
  • nly four possible configurations rr...r, rr...rl, ll...l, rll...l.

Here illustrate configurations rr...r, rr...rl. a1 ...... ... a1 ...

  • r

(width + 2) (width + 1) (width + 1)

= ⇒ The sum of widths of six drawings is increased by 2×(+2+1+1) = +8 units. Observation There exists a U-shaped constructive ordering for the drawings produced by our algorithm.

5 9 1 3 2 7 6 4 8

15/19

slide-48
SLIDE 48

Analysis

Example

3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

16/19

slide-49
SLIDE 49

Analysis

Example

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

16/19

slide-50
SLIDE 50

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

16/19

slide-51
SLIDE 51

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12

16/19

slide-52
SLIDE 52

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12 +8

16/19

slide-53
SLIDE 53

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12 +8 +8

16/19

slide-54
SLIDE 54

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12 +8 +8 +8

16/19

slide-55
SLIDE 55

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12 +8 +8 +8 = 12+(n−3)×8 = 8n−12

16/19

slide-56
SLIDE 56

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width. Hence, the drawing with the minimum width must be no wider than the average of 8n−12, i.e., ⌊ 8n−12

6

⌋ = ⌊ 4n

3 ⌋−2.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12 +8 +8 +8 = 12+(n−3)×8 = 8n−12

16/19

slide-57
SLIDE 57

Analysis

Example

There exists a certain U-shaped construct. order.

  • f the final six drawings

such that we rebuild visibility drawings according to the ordering in which the final drawing with the same visibility drawing embedding of our output has the minimum width. Hence, the drawing with the minimum width must be no wider than the average of 8n−12, i.e., ⌊ 8n−12

6

⌋ = ⌊ 4n

3 ⌋−2.

So our output must be no wider than ⌊ 4n

3 ⌋−2.

1 2 3 2 3 1 3 1 2 deg-3 U-detach 1 3 2 5 2 1 3 5 3 2 1 5 deg-3 U-detach 1 3 2 4 5 2 1 3 5 4 3 2 1 4 5 deg-5 U-detach 3 2 1 4 5 6 2 1 3 5 4 6 1 3 2 4 5 6

  • ur output

1 3 2 4 5 6 1 3 2 4 5 1 3 2 5 1 2 3 2 1 3 5 4 3 2 1 4 5 3 2 1 4 5 6 2 1 3 5 4 6 2 1 3 5 3 2 1 5 2 3 1 3 1 2

+1 +2 +1 +2 +1 +1 +2 +1 +1

  • min. among all

12 +8 +8 +8 = 12+(n−3)×8 = 8n−12

16/19

slide-58
SLIDE 58

Analysis

Main Problem: Consecutive Degree-3 U-Shaped Insertions

1

Fk,1 vp vq vr wb = 1 wb + 2 vk+1 vp vq vr

(ii) For L-shapes with wb = 1

wb + 1 vk+1 vp vq vr

1

Fk,1 vp vq vr wb

(i) For L-sahpes with wb >1

Fk,1 vp vq vr wb

  • r

(width + 1) (width + 2)

17/19

slide-59
SLIDE 59

Analysis

Main Problem: Consecutive Degree-3 U-Shaped Insertions

1

Fk,1 vp vq vr wb = 1 wb + 2 vk+1 vp vq vr

(ii) For L-shapes with wb = 1

wb + 1 vk+1 vp vq vr

1

Fk,1 vp vq vr wb

(i) For L-sahpes with wb >1

Fk,1 vp vq vr wb

  • r

(width + 1) (width + 2) For example, if we insert a degree-3 node into the following purple drawings ...

v4 v3 v1 v2 v5 v5 v1 v2 v3 v4 v4 v2 v3 v1 v5

(width +1) (width +2) (width +2)

1

The sum of the widths of the 6 drawings is increased by at least 2×(+1+2+2) = +10 units.

17/19

slide-60
SLIDE 60

Analysis

Borrowing and Returning Widths

in the 2nd pair in the 1st pair

v4 v3 v1 v2 v5

in the 3rd pair

v5 v1 v2 v3 v4

borrow

a unit from v2v3v4.

v4 v2 v3 v1 v5 v4 v2 v3 v1 v5

18/19

slide-61
SLIDE 61

Analysis

Borrowing and Returning Widths

in the 2nd pair in the 1st pair

v4 v3 v1 v2 v5

in the 3rd pair

v5 v1 v2 v3 v4

borrow

a unit from v2v3v4.

v4 v2 v3 v1 v5 v4 v2 v3 v1 v5

A unit is

retruned

to v2v3v4.

v5 v1 v2 v3 v4 v6 v4 v3 v1 v2 v5 v6 v4 v3 v1 v2 v5 v6 v4 v2 v3 v1 v5 v6 1

(width + 1) (width + 1) (width + 2) 18/19

slide-62
SLIDE 62

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a plane triangulation no wider than ⌊ 4n

3 ⌋−2 has been proposed in this

work. Our result improves upon the previously known upper bound

4n 3 +2⌈√n⌉, providing a positive answer to a conjecture about

whether an upper bound 4n

3 +O(1) on the required width can be

achieved for an arbitrary plane graph. Our result achieves optimality in the upper bound of width because the bound differs from the previously known lower bound ⌊ 4n

3 ⌋−3 only by one unit.

A line of future work is to try to use our technique to find the height-optimal visibility drawing.

19/19

slide-63
SLIDE 63

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a plane triangulation no wider than ⌊ 4n

3 ⌋−2 has been proposed in this

work. Our result improves upon the previously known upper bound

4n 3 +2⌈√n⌉, providing a positive answer to a conjecture about

whether an upper bound 4n

3 +O(1) on the required width can be

achieved for an arbitrary plane graph. Our result achieves optimality in the upper bound of width because the bound differs from the previously known lower bound ⌊ 4n

3 ⌋−3 only by one unit.

A line of future work is to try to use our technique to find the height-optimal visibility drawing.

19/19

slide-64
SLIDE 64

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a plane triangulation no wider than ⌊ 4n

3 ⌋−2 has been proposed in this

work. Our result improves upon the previously known upper bound

4n 3 +2⌈√n⌉, providing a positive answer to a conjecture about

whether an upper bound 4n

3 +O(1) on the required width can be

achieved for an arbitrary plane graph. Our result achieves optimality in the upper bound of width because the bound differs from the previously known lower bound ⌊ 4n

3 ⌋−3 only by one unit.

A line of future work is to try to use our technique to find the height-optimal visibility drawing.

19/19

slide-65
SLIDE 65

Conclusion

Conclusion

A linear-time algorithm to find a visibility drawing of a plane triangulation no wider than ⌊ 4n

3 ⌋−2 has been proposed in this

work. Our result improves upon the previously known upper bound

4n 3 +2⌈√n⌉, providing a positive answer to a conjecture about

whether an upper bound 4n

3 +O(1) on the required width can be

achieved for an arbitrary plane graph. Our result achieves optimality in the upper bound of width because the bound differs from the previously known lower bound ⌊ 4n

3 ⌋−3 only by one unit.

A line of future work is to try to use our technique to find the height-optimal visibility drawing.

19/19