• 沒有找到結果。

The Drawing Algorithm

在文檔中 圖的接觸表示法 (頁 124-129)

Area-universal Drawings of Biconnected Outerplane Graphs

7.2 The Drawing Algorithm

In the two dimensional case, the graph class receiving the most attention in the study of contact graph representations is undoubtedly the class of maximal planar graphs, in which each of its internal faces is a triangle corresponding to a T-junction in the rectilinear dual of the graph. As 3D allows us to capture a richer graph class in terms of contact representations, it is natural to begin with a class of non-planar graphs with some sort of a flavor of a "triangulation". Chordal graphs (also named as triangulated graphs in some literature) is a good candidate for this purpose. See Section 2.2 for the definition of the chordal graphs.

Chordal graphs can be characterized as intersection graphs of subtrees of a tree. The following result is well-known.

Theorem 7.1. For a (connected) chordal graph G, we can construct a tree T1 where each X ∈ V (T1) is a subset of V (G) such that the following conditions are met:

113

1. ∀v ∈ V (G), the set {X ∈ V (T1)|v ∈ X} forms a subtree of T1.

2. ∀v1, v2 ∈ V (G), {v1, v2} ∈ E(G) iff ∃X ∈ V (T1) such that{v1, v2} ⊆ X.

It is noted that the tree T1in the above theorem is also known as a clique tree of G, as each node of T1 corresponds to a maximal clique of G. See graph G and tree T1 in Fig. 7.1.

To facilitate the construction of a 3D floorplan of a chordal graph, we slightly mod-ify the clique tree in the above theorem to yield a new tree satisfying four additional properties, as shown in the following theorem.

Theorem 7.2. For a (connected) chordal graph G, we can construct a tree T2 where each X ∈ V (T2) is a subset of V (G) such that the following conditions are met:

1. ∀v ∈ V (G), the set {X ∈ V (T2)|v ∈ X} forms a subtree of T2.

2. ∀v1, v2 ∈ V (G), {v1, v2} ∈ E(G) iff ∃X ∈ V (T2) such that{v1, v2} ⊆ X.

3. T2 is of maximum degree 3.

4. If X ∈ V (T2) is of degree 3, then∀v ∈ V (G), ∀{X, X} ∈ E(T2), v ∈ X iff v ∈ X.

5. If X ∈ V (T2) is of degree 1,|X| = 1.

6. ∀{X, X} ∈ E(T2),|X \ X| ≤ 1.

To understand the difference between T1and T2, first recall that a chordal graph can be captured as the intersection graph of subtrees of a tree. See Fig. 7.1 for illustrations of T1 and T2 satisfying the conditions in Theorem 7.1 and Theorem 7.2, respectively.

The vertical line segments in the lower left of Fig. 7.1 shows a portion of the subtrees corresponding to vertices 1, 2, 3, 4, 5 within the pathes P1, P2. For instance, considering the intersection graph of subtrees of T1, {2, 5} is an edge in G since line segments associated with 2 and 5 overlap at some node, as our drawing of P1indicates. To meet the four additional conditions in Theorem 7.2, P2 is obtained from P1 by stretching

some of the line segments of P1(while introducing additional nodes in the tree) so that the difference between two adjacent nodes in P2 is exactly one, and P2exhibits exactly the same intersection relation as P1. Adapting a similar approach for other portion of T1, a tree (T2) satisfying Theorem 7.2 can be constructed easily. It is not difficult to see that T2 in Fig. 7.1 satisfies all the conditions in Theorem 7.2. In view of the above, Theorem 7.2 should be obvious.

In what follows, we show that any chordal graph G admits a 3D floorplan R using only two layers. Intuitively, a 2-layer floorplan is referred to one that can be obtained by gluing two 2D floorplans together. We write N, E, S, W, U, and L to denote the northern, eastern, southern, western, upper, and lower faces of the boundary box of R, respectively. Each of them can be seen as a 2D floorplan of some rectilinear polygons corresponding to some vertices in G, where several rectilinear polygons may correspond to the same vertex. We write R(X), X ∈ {N, E, S, W, U, L}, to denote such a 2D drawing. We note that a 3D floorplan R using only two layers is completely describable by the two overlapping 2D floorplans R(U) and R(L).

See Fig. 7.2 for an illustration of a 3D floorplan consisting of a box labeled 2 lying on two L-shape polyhedra labeled 1 and 3. R(X), X ∈ {N, E, S, W, U, L}, are also depicted in the figure. One can easily observe that the information provided by R(U) and R(L) are sufficient to describe the floorplan completely as it uses only two layers.

Hence, to simplify the illustration of our algorithm, instead of giving a 3D drawing of the floorplan, we only draw R(U) and R(L) in our subsequent discussion.

𝑣′ Figure 7.2: Illustration of a 3D floorplan.

Given a chordal graph G, our approach is an inductive construction based on a tree T guaranteed by Theorem 7.2. We make T a rooted tree by designating one of its vertices

115

of degree 1 as the root.

(Invariant) For any subtree T whose root is X, we write GX to denote the subgraph of G induced by {v ∈ V (G)|∃X ∈ V (T), v ∈ X}. The invariant (i.e., inductive hypothesis) of our construction is described as follows:

Given any designated vertex v ∈ X, there is a 2-layer 3D floorplan RX,v of GX satisfying the following requirements:

1. Each of RX,v(E) and RX,v(W) contains exactly one rectangle; and the rectangle corresponds to v.

2. If|X| = 1, RX,v(S) contains exactly one rectangle; and the rectangle corresponds to v.

3. If|X| > 1, RX,v(S) contains exactly |X| + 1 rectangles, each of which touches the upper and the lower sides of the outer boundary. The west-most and the east-most rectangles correspond to v. The remaining|X| − 1 ones correspond to the

|X| − 1 vertices in X \ {v}, respectively.

(Base case) X is a leaf in T . According to Theorem 7.2,|X| = 1, it is immediate that a 3D floorplan containing exactly one box for the unique vertex v ∈ X works.

(Induction step) Suppose X is not a leaf. Since the maximum degree of T is at most 3, and since the root of T is of degree 1, every non-leaf vertex in T contains either one or two children.

We first deal with the situation when X has exactly one child X1. By induction hypothesis, for any designated vertex v ∈ X1, there is a drawing RX1,v of GX1 satis-fying the above requirements. If X = X1, taking the drawing RX,v = RX1,v suffices.

Therefore, we assume that X ̸= X. In view of Theorem 7.2, we must have either X1 = X∪{v} for some v ∈ X1\X (Case A) or X = X1∪{v} for some v ∈ X \X1

(Case B).

Case A: For any v ∈ X, we must have v ∈ X1. A desired RX,v can be constructed by extending the southern part of RX1,v with an operation which eliminates v from

RX,v(S). Adding a bend to a module near the module corresponding to v suffices to prevent the presence of vin RX,v(S). See Fig. 7.3 for an illustration of such a removal operation. Figure 7.3: Illustration of the removal operation

𝑣′

Figure 7.4: Illustration of the insertion operation

𝑣

Figure 7.5: Illustration of the operation that changes the outer module

Case B: For any v ∈ X, we must have either v ∈ X1 or v = v. Similarly, if v X1, a desired RX,v can be constructed by extending the southern part of RX1,v with an operation which introduces the new orthogonal polyhedron corresponding to v and makes it appears in RX,v(S). Such an insertion operation is illustrated in Fig. 7.4. If v = v, we start with RX1,v′′ for any v′′ ∈ X1. After introducing the new orthogonal polyhedron corresponding to vusing the insertion operation in Fig. 7.4, we still need to

117

make the module of v = v to be the outer one (i.e., occupying the entire RX,v(E) and the entire RX,v(W)). The operation to fulfill this task is described in Fig. 7.5. It is easy to verify that the resulting drawing meets all the requirements and that the drawing is a 3D floorplan of GX (the module corresponding to v is guaranteed to contact all other modules of vertices in X in the upper layer).

Next, we deal with the remaining situation where X has two children X1 and X2 (Case C). In view of Theorem 7.2, we always have v ∈ X1 and v∈ X2,∀v ∈ X.

Figure 7.6: Illustration of the merging operation

Case C: For any v ∈ X, a desired RX,v can be constructed by the following proce-dure. First, we combine RX1,v and RX2,vtogether by gluing RX1,v(E) with RX2,v(W).

Then, we extend the southern boundary to link the polyhedra in RX1,v and in RX2,v corresponding to the same vertex. The detail of the merging operation is described in Fig. 7.6.

By carrying out the inductive construction in a bottom up fashion, the following main theorem of the section is obtained:

在文檔中 圖的接觸表示法 (頁 124-129)