• 沒有找到結果。

Let G be a biconnected plane 3-graph (may have multi-edges) with k

在文檔中 圖的接觸表示法 (頁 60-67)

Orthogonally Convex Drawings

Lemma 3.6. Let G be a biconnected plane 3-graph (may have multi-edges) with k

boundary critical paths, and Q be an orthogonally convex polygon. We have

(1) min{numSide(D(CO))| D is an orthogonally convex drawing of G} = max{4, 2k− 4}, and

(2) if numSide(Q)≥ max{4, 2k−4}, there is an orthogonally convex drawing D(G) such that D(CO) is combinatorially equivalent to Q.

Proof. First, we show that for any orthogonally convex drawing D(G), numSide(

D(CO))≥ max{4, 2k −4}. According to Lemma 3.1, for any boundary critical path P of two ends x and y, the number of convex corners located in the P(x⌢y)of D(CO) is at least one more than that of concave corners. Since all critical paths are edge-disjoint by Lemma 3.2, the total number of convex corners in D(CO) must be at least k. Therefore, the total number of corners of D(CO) is at least k + (k− 4) = 2k − 4 (since number of convex corners must be four more than that of concave corners in an orthogonal polygon), and so is the number of sides. Since each orthogonal polygon must contains at least 4 sides, we conclude that numSide(D(CO))≥ max{4, 2k − 4}.

Second, we show that for any orthogonally convex polygon Q of numSide(Q) max{4, 2k − 4}, we can construct an orthogonally convex drawing D(G) such that D(CO) is combinatorially equivalent to Q. Let the circular order (in counter-clockwise orientation) of corners of Q be (v0, v1, . . . , vs−1). Since the number of convex corners is exactly four more than the number of concave corners, there exist four indices 0 i0 < i1 < i2 < i3 ≤ s − 1 such that vit, v(it−1) mod s are convex corners, and st = (vit, . . . , vi(t+1) mod 4−1) is a sequence of alternation of convex and concave corners, for 0≤ t ≤ 3.

Now we are in a position to start the construction, which is based mainly on the algorithm described in Section 3.4. Since the number of bends inside Q is irrelevant, we can add to G a sufficient large amount of 2-vertices by subdividing edges not in CO. Every 2-vertex in COis removed by contraction, and add to each boundary critical path P a 2-vertex by subdividing an edge in P .

If k < 4, 4− k 2-vertices are added to COat arbitrary positions, as long as we do not put all the k 2-vertices in P(x⌢y) for any P in SGwhose two ends are x and y. This is easy since all the paths in SGare edge-disjoint.

The next step is to verify that the current graph admits a no-bend orthogonally con-vex drawing by examining the conditions in Theorems 3.2 and 3.5. Conditions in

i1

Figure 3.15: Illustration of the proof of Lemma 3.6.

Theorem 3.2 are automatically satisfied since an arbitrary amount of 2-vertices for edges not in CO can be added. Condition 1 in Theorem 3.5 is also met. Now assume there exists a P in SG contradicting condition 2 in Theorem 3.5, that is, CO\ P con-tains no 2-vertices. Since all the 2-vertices are located in P , every boundary critical path must edge-intersect with P , and hence contain P as a subpath. Due to the fact that critical paths are mutually edge-disjoint, G contains at most 1 boundary critical path.

According to our strategy of adding additional 2-vertices when k < 4, P cannot contain all the 2-vertices in CO, which is a contradiction to the assumption that CO\ P contains no 2-vertices. Hence condition 2 in Theorem 3.5 must be met, too.

Next, we construct a desired drawing based on the drawing algorithm described in the proof of Theorem 3.3.

Consider the three cases and their sub-cases in the construction detailed in the proof

of Theorem 3.3. Let uj0, uj1, uj2, uj3 be the four designated vertices of G. Since we have a sufficient amount of 2-vertices for every non-boundary path, when case 1 occurs for the outer face being F1, we can always forbid sub-case 3, and similarly sub-case 3 of case 3 and sub-case 1 of case 2 can be excluded.

Whenever case 2 occurs for the outer face being F1, we always choose sub-case 2.2 (it is easy to see that sub-case 2.2 is always available if we never choose sub-case 2.1 whenever F1 is the outer face). If the algorithm is executed in this way, it is easy to see that when the algorithm terminates, all the 2-vertices in CObecome convex corners.

Due to the preference of sub-case 2.2 and the orthogonally convexity of D(CO), the portion of D(CO) between ujt and uj(t+1) mod 4 contains exactly (j(t+1) mod 4− 1 − jt) mod r pairs of convex corners and concave corners, for 0 ≤ t ≤ 3. Therefore, our result follows after adding dt pairs of convex and concave corners to the portion of D(CO) between ujt and uj(t+1) mod 4, for each 0≤ t ≤ 3.

See Fig. 3.15 for a graphical illustration for the proof. For simplicity, only the boundary contour of G is drawn, omitting everything other than the r 2-vertices de-scribed in the proof. The corners circled by the dotted ellipses are produced by the extension of sub-case 2.2 of case 2; the corners circled by the dash-dotted ellipses are added in the last, after the execution of the no-bend orthogonally convex drawing algo-rithm.

The concept of critical paths turns out to be pretty clean in the dual setting. We use TGto denote the block-cutvertex tree of G. As we shall see later in Lemma 3.7, leaves in TGdual can be put into one-to-one correspondence with critical paths in Gprimal.

Let{v, u} be an edge in E(TGdual) such that v is a cut-vertex. Now u must be a block.

Let Vv,u be the vertex set of the component in Gdual \ {v} that contains some vertices in block u, and Fv,u denote the corresponding face set in Gprimal. Since Gdual is inter-nally triangulated, the edges in E(Gdual) that link v to vertices in Vv,u must be located consecutively in the circular list of edges incident to v that describes the combinatorial embedding of Gdual. We denote such an edge set as Ev,u. According to the definition

of duality of plane graphs and the algorithm for constructing Gprimalfrom Gdual, these edges form a path in Gprimal. We write Cv,u to denote the cycle that is the boundary of the union of faces in Fv,u. For instance, in Fig. 3.14 the set Ev,u is{e1, e2, e3}, which forms the non-boundary contour path with respect to Cv,u=(e1, e2, e3, e4, e5).

Lemma 3.7. {Boundary contour path of Cv,u| u is a leaf of TGdual,{v, u} ∈ E(TGdual)} is the set of boundary critical paths in Gprimal.

Proof. We first prove that a 2-legged cycle is proper if and only if it is Cv,u for some edge{v, u} in E(TGdual) such that v is a cut-vertex.

Following the respective definitions, it is easy to verify that Pv,u is the intersection of Cv,u and the contour of Fv (i.e. the face in Gprimalcorresponding to the vertex v in Gdual), and Fv is the only inner face that borders Cv,u in its outer region. Therefore, Cv,u is a boundary 2-legged cycle, with Pv,u being its non-boundary contour path, and FCv,u,Pv,u being Fv. Since Gdual\ {v} has more than 1 component, there must be some face not in Fv,uthat also borders Fv, and hence the contour of Fvintersects COof Gprimal

in more than one path. Therefore, Cv,u is proper.

Conversely, let C be a proper 2-legged cycle in Gprimal, and P being its non-boundary contour path. Due to the properness of C, the boundary of FC,P intersects COof Gprimal in more than one path. Let v be the vertex in Gdual to which FC,P corresponds, and U be the subset of V (Gdual) that corresponds to the faces in G(C). It is easy to see that v is a cut-vertex, and U is a component in Gdual\ {v}, and hence C = Cv,u for some block u (the block neighboring v that belongs to the component).

We define a partial order≺ on proper 2-legged cycles in Gprimalsuch that C1 ≺ C2

if and only if G(C1) ⊆ G(C2). From the definition of critical paths and the fact that Gprimal does not contain any non-boundary 2-legged cycle, a path P is a critical path if and only if it is a boundary contour path of a proper 2-legged cycle C such that C is minimal with respect to≺. To conclude the proof, it suffices to show that {Cv,u| u is a leaf of TGdual,{v, u} ∈ E(TGdual)} contains the minimal elements.

According to basic properties of block-cutvertex trees, let{v1, u1}, {v2, u2} be two

edges in E(TGdual) such that v1and v2are cut-vertices, is easy to see that Fv1,u1 ⊂ Fv2,u2

if and only if there is a path (v1, u1, . . . , v2, u2) in TGdual. Since G(Cv,u) is exactly the union of faces in Fv,u, we conclude that{Cv,u| u is a leaf of TGdual,{v, u} ∈ E(TGdual)} contains the minimal elements.

In Fig. 3.14, the boundary contour paths of Cv,u and Cx,y are the paths drawn in dashed and dotted lines, respectively. These two paths are the boundary critical paths of Gprimal. Following Lemmas 3.5, 3.6, 3.7 and Theorem 3.4, we have

(1)

(2)

(3)

a b

a b

Figure 3.16: Key concepts in Q-floorplanning.

Theorem 3.8. For any internally triangulated graph Gdual and orthogonally convex polygon Q, let k be the number of leaves in the block-cutvertex tree of Gdual. Gdual admits an orthogonally convex Q-floorplan iff numSide(Q) ≥ max{4, 2k − 4}. The floorplan can be constructed in linear time.

Fig. 3.16 summarizes the key concepts presented above. Fig. 3.16(1) is a decom-position of Gdual based on the block-cutvertex tree. Fig. 3.16(2) shows the respective

decomposition in Gpromal, in which the two boundary critical paths corresponding to the two cut vertices are clearly marked. The final Q-floorplan is displayed in Fig. 3.16(3), where Q is an L-shape polygon.

Chapter 4

在文檔中 圖的接觸表示法 (頁 60-67)