39
投影片 1 Open Guard Edges and Edge Guards in Simple Polygons ,with Csaba D. Tóth and Godfried T. Toussaint, Proceedings of 23rd Canadian Conference on Computational Geometry, 449-454, 2011. http://www.eecs.tufts.edu/~awinslow/ Presenter : Oscar, [email protected] 2013/06/10

Open guard edges and edge guards in simple polygons

Embed Size (px)

Citation preview

投影片 1

Open Guard Edges and

Edge Guards in Simple

Polygons

,with Csaba D. Tóth and Godfried T. Toussaint, Proceedings of

23rd Canadian Conference on Computational Geometry, 449-454,

2011. http://www.eecs.tufts.edu/~awinslow/

Presenter : Oscar, [email protected]

2013/06/10

投影片 2

• Guard edges

• Assign. 2 - art gallery problem

投影片 3

• Terms explanation

• Upper bound of open/closed guard

edges of Non-starshaped simple

polygon.

• Lemma

Outline

投影片 4

Terms explanation

投影片 5

Closed guard edges

投影片 6

Open guard edges

Open guard edges not include end points

可以看到kernel

投影片 7

Geodesic path(p,q)

• Geodesic path(p,q)

→ path(p,q)

• Shortest directed path from p to q that

lies entirely in P.

• path(p,q) is straight line ⇔ p and q see

each other.

這裡我們講path(p,q) 就是Geodesic path(p,q)

投影片 8

weakly visible

• A point is weakly visible to a set of

points

• this point is visible from some point in

that set.

投影片 9

A starshaped n-gon P with kernel(P)

只有starshaped才有kernel

投影片 10

Star-shaped polygon

https://en.wikipedia.org/wiki/Star-shaped_polygon

a polygon that contains a point from which the entire polygon boundary is visible

The set of all points z with this property (that is, the set of points from which all of P

is visible) is called the kernel of P.

投影片 11

Non-starshaped simple polygon

No kernel

投影片 12

Lemma 1(1) open edge

• Let p be a point inside a simple polygon

P.

1. Point p is visible from an open edge

uv ⇔ p is the only common vertex of

path(p, u) and path(p, v)

投影片 13

Point p is visible from an open edge uv ⇔p is the only common vertex of path(p, u)

and path(p, v)

geodesics

投影片 14

Lemma 1(2) closed edge

• Let p be a point inside a simple polygon P.

2.p is visible from a closed edge uv ⇔ {p,

u, v} are only three possible common

vertices of path(p, u) and path(p, v).

Closed edge uv 看得到P,則path(p,u)和path(p,v)任何共同的節點,必是p,u,v其中

一個。

投影片 15

p is visible from a closed edge uv ⇔ {p, u,

v} are only three possible common

vertices of path(p, u) and path(p, v).

投影片 16

OPEN GUARD EDGES

投影片 17

A simple polygon with open

guard edges

• ≥ 2 ⇔ starshaped.

• ≤ 1 ⇔ Non-starshaped

投影片 18

Lemma 2Given ab, cd are open guard edges.

⇒path(b, c) and path(a, d) are disjoint.

⇒path(a, c) and path(b, d) are straight line.

投影片 19

• quadrilateral Q ← {ab, path(b,c), cd, and path(a,d)}

• Assume interior vertex q ∈ path(b,c) ∩ path(a,d)

• a or b is not visible from the open edge cd (Lemma 1)

• cd is not a guard edge (contradiction)

• Conclude

path(b,c) and path(a,d) are disjoint

Q is a simple polygon

ab, path(b, c), cd, and path(a, d)形成四邊形Q,ab上任一點和cd上任一點所連結的

路徑都在Q裡。如果path(b,c)和path(a,d)有共同內部節點q,則open edge cd看不

到a或b其中一個 (Lemma 1),所以cd就不能當guard edge。我們得到結論,

path(b,c)和path(a,d)不相連,且Q是simple polygon。

投影片 20

• Assume an interior vertex of path(a,c) in path(b,c)

• c is not visible from ab

• ab is not a guard edge (contradiction)

• Conclude

path(a,c) has no interior vertices.

path(b,d) has no interior vertices as well.

Path(a,c)和path(b,d)在Q中,所以任何path(a,c)和path(b,d)的內部節點是Q的節

點。如果path(a,c)的內部節點在path(b,c)裡,則ab看不到c。同樣地,如果

path(a,c)的內部節點在path(a,d)裡,則cd看不到a。因此,path(a,c)沒有內部節

點,同樣path(b,d)也不會有內部節點。

投影片 21

Lemma 3 Given ab, cd are open guard edges.

⇒The intersection point x = ac ∩ bd is in

the kernel of P

投影片 22

• To show that an arbitrary point p is visible from

x.

• ac and bd are diagonals of P (lemma 2)

• assume p ∈ △ (abx) ∪△ (cdx)

• px lies in the same triangle

• p can be seen by x.

圖中證明在多邊形P內,x可以看到任意的點p。

基於lemma 2,ac及bd是對角線(ad, cb不交集)。三角形(abx)及(cdx)在P內部。如

果p屬於(abx)或(cdx),則px線段在同一個三角形裡。

投影片 23

• Assume p is outside of both triangles.

• ∵ ab and cd are open guard edges

• p sees q and o (relative interiors)

• quadrilateral Q = (o, p, q, x) is simple and

inside P

• diagonal px lies inside Q

• ∴p can be seen by x.

假設p在兩個三角形之外,由於ab和cd是open guard edges,p看到一些點在它的

相對內側,例如o屬於ab和q屬於cd。四邊形Q {o,p,q,x}是simple,而且它一樣在

P裡。注意Q的o和q是convex節點。無論Q是convex或非convex四邊形,它的對

角線px在Q裡(x看得到p),所以也在P裡。

投影片 24

Theorem 4Non-starshaped simple polygon ⇔ open

guard edge ≤ 1

If a simple polygon has two open guard edges,

then it has a nonempty kernel by Lemma 3, and thus

is starshaped. So every non-starshaped simple polygon

has at most one open guard edge.

No kernel(P)

投影片 25

Theorem 4• Non-starshaped simple polygon ⇒ open guard edge ≤ 1

• Open guard edge

≥ 2

• has kernel(P)

(Lemma 3)

• A starshaped polygon

• Contradiction

投影片 26

CLOSED GUARD EDGES

投影片 27

Theorem 5

non-starshaped simple polygon

closed guard edges ≤ 3

We proceed by contradiction, and show that the presence of four closed guard edges

implies that the polygon is starshaped. Let P be a simple polygon where g1, g2,g3,

and g4, in counterclockwise order, are guard edges. Let g1 = ab and g3 = cd such that

a, b, c, and d are in counterclockwise order along P . Note that the vertices a, b, c, and

d are distinct.

In fect, it is equal to 3

投影片 28

Lemma 6 • Given g1,g3 are closed guard edges.

⇒ the path(b, c) and path(a, d) are disjoint

⇒ path(a, c) and path(b, d) in □{a, b, c, d}.

all vertices of the geodesics path(a, c) and path(b, d) are in {a, b, c, d}.

geodesic quadrilateral Q

重點:g3,g1一定要能看到彼此

-------------------

考慮由ab, path(b,c), cd, path(a,d)形成的四邊形Q,所有由ab中任一點及cd中任一

點所連起來的路徑必在Q之內。假設path(b,c)的一內部節點q是path(a,d)的一個節

點。如果q是a或path(a,d)中任一內部節點,則closed edge cd無法看到b (Lemma

1)。同樣地,如果q是d,則closed edge ab看不到c。我們得到結論,path(b,c)和

path(d,a)是不相連(因為g3和g1要能完全看到彼此,因為他們是guard edges),而

且Q是simple polygon(沒有洞在裡面擋住)。

投影片 29

• path(a,c) and path(b,d) lie in Q

• Any interior vertex of path(a,c) and path(b,d) is in Q

• Assume path(a,c) and path(b,c) have a common interior vertex

• c is not visible from ab

• ab is not a guard edge (contradiction)

• Conclude

all interior vertices of path(a,c) and path(b,d) are in {a,b,c,d}

Path(a,c)和path(b,d)在Q裡,所以任何path(a,c)和path(b,d)的內部節點,都會在Q

裡。如果path(a,c)和path(b,c)有共同的內部節點,則ab不能看到c。同樣地,

{a,b}和{c,d}上任兩點連成的路徑線,不能有任何的共同內部節點。因此,

path(a,c)和path(b,d)的所有內部節點都一定在四邊形{a,b,c,d}裡。

投影片 30

Corollary 7

• If □{a, b, c, d} is convex ⇒ path(a,c)

and path(b,d) are straight line.

Figure 5: The convex hull of two closed guard edges, ab and cd, is either a

quadrilateral or a triangle

投影片 31

Corollary 7convex({a, b, c, d})=△(abc)

⇒path(a,c) = (a,d,c) and path(b,d) = bd.

Figure 5: The convex hull of two closed guard edges, ab and

cd, is either a quadrilateral or a triangle

w.l.o.g

投影片 32

Lemma 8 • The intersection point x = path(a, c) ∩

path(b, d) is in the kernel of P .

g2

Lemma 3 是直線

G1 2 3 4是guard edges

投影片 33

• To show that an arbitrary point p is visible from

x.

• △ (abx) ,△ (cdx) are diagonals in P (Corollary 7)

• Assume p ∈ △ (abx) ∪△ (cdx)

• px lies in the same triangle

• p can be seen by x.

我們要證明任意的point p在多邊形P裡,都可以被x看到。

1.根據推論7,三角形(adx) (cdx)是位在P裡,所以如果p是在這兩個三角形裡,

則px線段也必在三角形裡。

投影片 34

• Assume p is outside of both triangles.

• w.l.o.g. assume, p is on the right side of the

directed path(a,c) and path(b,d).

• p and the guard edge g4 are on opposite sides

• If path(p,x) = px, then p is visible from x (done)

Generality

2.如果p是在三角形之外,不失一般性的假設p在path(a,c)和path(b,d)右邊,所以p

和guard edge g4在不同邊。如果path(p,x)是直線,則x看得到p。

投影片 35

• path(p,x) is not a straight line

• w.l.o.g. assume, path(p,x) makes a right turn at its last

interior vertex q

• = path(p,d) also makes a right turn at q

• ∵ p is visible from the guard edge cd

• ∴ q = c (Lemma 1b)

• ∵any paths from g4 to p make a right turn at c

• ∴ p is not visible from g4 (Lemma 1b) (contradiction)

• ∵ from g4 to p is straight line

• ∴ path(p,x) is a straight line

Generality

我們假設path(p,x)不是直線,path(p,x)在最後一個內部節點q右轉,則path(p,d)也

在q右轉。由於guard edge cd可以看到p,故必q=c (Lemma1b)。重提一下,p到g4

的路徑跨越path(a,c)和path(b,d)。由於path(p,x)在c右轉,每條從p到g4的路徑都

在c右轉。但是c和g4不相連,而且q4看不到p(lemma1b),和我們最初的假設

contradict。我們得到結論,path(p,x)是直線,所以x看得到p。

(g4也是closed guard edge,g4必需要能看到p及所有多邊形內部)

投影片 36

Theorem 5

non-starshaped simple polygon

closed guard edges ≤ 3

Proof

If a simple polygon has four closed guard edges, then it has a nonempty kernel by

Lemma 8, and thus is starshaped. So every nonstarshaped simple polygon has at most

three closed guard edges.

投影片 37

TO FIND KERNEL(P)

投影片 38

Left and right kernels