A MöbiusInvariant Power Diagram and Its Applications to Soap Bubbles and Planar Lombardi Drawing
 246 Downloads
 1 Citations
Abstract
We use threedimensional hyperbolic geometry to define a form of power diagram for systems of circles in the plane that is invariant under Möbius transformations. By applying this construction to circle packings derived from the Koebe–Andreev–Thurston circle packing theorem, we show that every planar graph of maximum degree three has a planar Lombardi drawing (a drawing in which the edges are drawn as circular arcs, meeting at equal angles at each vertex). We use circle packing to construct planar Lombardi drawings of a special class of 4regular planar graphs, the medial graphs of polyhedral graphs, and we show that not every 4regular planar graph has a planar Lombardi drawing. We also use these power diagrams to characterize the graphs formed by twodimensional soap bubble clusters (in equilibrium configurations) as being exactly the 3regular bridgeless planar multigraphs, and we show that soap bubble clusters in stable equilibria must in addition be 3connected.
Keywords
Graph drawing Lombardi drawing Soap bubbles Circle packing Power diagram Hyperbolic geometry1 Introduction
Voronoi diagrams, the partitions of the Euclidean plane or other geometric spaces into cells within which one of a given set of point sites is closer than all others, have been fundamental to many algorithms in computational geometry. These diagrams may also be described by their planar dual Delaunay triangulations, in which two sites are connected by an edge if they lie on the boundary of a disk that is empty of sites. One of the useful properties of Delaunay triangulations (viewed as abstract graphs rather than geometric objects and extended to include pairs of sites on the boundaries of empty disk complements) is that they are invariant under Möbius transformations of the plane (a set of circlepreserving transformations that includes circle inversions as well as the more usual translations, rotations, and dilations, and is closed under composition of transformations). This Möbius invariance property of Delaunay triangulations has been used, for instance, to define Möbiusinvariant interpolation methods analogous to the Voronoibased natural neighbor method [5].
Power diagrams [3] generalize Voronoi diagrams to sites that are circles rather than points, using the power distance from a circle, the length of a tangent line segment from a given point to the circle. Like Voronoi diagrams, power diagrams have simplyconnected polygonal cells and linear total complexity. However, classical power diagrams and their duals do not have the same Möbius invariance property as Delaunay triangulations. In this paper we define an alternative power diagram for a system of circles that is Möbius invariant. Our diagram may be interpreted in terms of threedimensional hyperbolic geometry, or as the minimization diagram of a distance function from points to circles; this distance can be defined geometrically in terms of the radii of certain tangent circles associated with the point and circle, or by an algebraic formula of their coordinates. The cell boundaries of this diagram are circular arcs. The diagram for an arbitrary system of circles may not have simply connected cells, but for circle packings (systems of tangent circles dual to maximal planar graphs) the cells are simply connected and the diagram may be constructed in linear time. We provide two applications of this construction, in graph drawing and in the mathematics of soap bubbles.
1.1 Lombardi Drawing
Lombardi drawing is a style of graph drawing, named after artist Mark Lombardi, in which the edges of a graph are drawn as circular arcs and in which every vertex is surrounded by edges that meet at equal angles at the vertex—that is, the drawing has perfect angular resolution [17, 18]. Several families of graphs are known to have Lombardi drawings, including regular graphs (under certain restrictions on their factorizations into regular subgraphs) and certain highly symmetric graphs [18]. Lombardi drawings have also been used to draw plane trees with perfect angular resolution in polynomial area, something that would be impossible for straight line drawings [17]. All graphs have drawings that relax the constraints of Lombardi drawing to allow polyarcs or unequal angles [9, 16], but the improved aesthetic quality of true Lombardi drawings makes it of interest to determine more precisely which graphs have such drawings.
Planarity, the avoidance of crossing edges, is of great importance both in Lombardi drawing and in graph drawing more generally. By Fáry’s theorem, every planar graph can be drawn planarly with straight line segments for its edges, and therefore it can also be drawn with circular arcs. Indeed, there exist universal sets of \(n\) points such that every \(n\)vertex planar graph can be drawn using those points for vertices and circular arcs for edges, something that is not true for straightline drawing [2]. However, those arcs may not necessarily meet at equal angles. Not all planar graphs have planar Lombardi drawings [18] and indeed even the planar 3trees (which are maximal planar and 3connected) can fail to have planar Lombardi drawings [16]. Only a few positive results on planar Lombardi drawing are known: prior to our work, only trees, Halin graphs (the graphs formed from plane trees by adding a cycle connecting the leaves), outerpaths (graphs for which the adjacency structure of the bounded faces is a path), and the graphs of symmetric polyhedra were proven to have planar Lombardi drawings [18, 40].
In this paper we take a major step forward in our knowledge of planar Lombardi drawings, and in the applicability of the Lombardi drawing style, by showing that all planar graphs of maximum degree three have planar Lombardi drawings. The heart of our method applies to 3connected 3regular planar graphs: we apply the Koebe–Andreev–Thurston circle packing theorem to the dual graph, and then construct the Möbiusinvariant power diagram of the circle packing, which we show to be a planar Lombardi drawing of the input. Our implementation of this method produces drawings in which the overall drawing and the individual faces are all approximately circular and in which the spacing of the vertices is locally uniform. We extend these results to graphs that are neither 3regular nor 3connected by using bridgeblock trees and SPQR trees to decompose the graph into 3connected subgraphs, drawing these subgraphs separately, and using Möbius transformations to glue them together into a single drawing. The same method may be applied to certain other non3regular graphs, including the Halin graphs. We also use a different type of circle packing (with two sets of orthogonal circles) to construct planar Lombardi drawings of a special class of 4regular planar graphs, the medial graphs of polyhedral graphs. However, as we show, not every 4regular planar graph has a planar Lombardi drawing.
1.2 Soap Bubbles
Analogous problems of characterizing graphs that represent other kinds of discrete geometric structure have long been studied. The prototypical example is Steinitz’s theorem, that the graphs of threedimensional convex polyhedra are exactly the 3vertexconnected planar graphs [51]; much subsequent research has focused on the algorithmic problem of constructing polyhedral representations with small coordinates [10, 48, 49]. The graphs of nonconvex polyhedra with axisparallel edges may also be characterized in terms of planarity and connectivity [22], as may the graphs of subdivisions of rectangles into smaller rectangles [38, 39, 57].
In this paper we model soap bubble clusters mathematically using two longestablished principles governing their behavior: Plateau’s laws describing the local geometry of the surfaces and junctions in a bubble cluster, and the Young–Laplace equation relating the curvature of bubble surfaces to the pressure in each bubble. We define a planar soap bubble cluster to be a family of arcs in the plane that obeys the planar versions of these principles. It turns out that soap bubbles, defined in this way, are Möbius invariant: Möbius transformation of a planar soap bubble cluster results in another physically realizable soap bubble cluster, despite the unphysicality of this transformation. This fact has been previously used to study planar triple bubbles [60], but as we show it has broader implications. Using Möbius invariance, we provide a simple proof that the graph of every planar soap bubble cluster is 2vertexconnected, 3regular, and planar. These necessary conditions turn out to be sufficient: every 2vertexconnected 3regular planar graph is the graph of a soap bubble cluster. To prove this, we use our Lombardi drawing algorithm: not every Lombardi drawing is a soap bubble cluster, because the drawing may not satisfy the Young–Laplace equation, but the drawings produced by our algorithm in the 2vertexconnected case do satisfy this equation and form valid soap bubbles.
We are not aware of prior attempts to characterize the graphs of soap bubbles, but soap bubbles have been studied mathematically in many other ways. The Kelvin conjecture, stating that a foam with truncatedoctahedron cells has the minimum total surface area among all soap bubble foams with equalvolume cells, was posed in the 19th century by Lord Kelvin and finally solved negatively in 1993 by the discovery of the Weaire–Phelan structure, a more parsimonious foam with two different cell shapes [55, 59]; proof that this newer structure is optimal remains elusive. A related problem, the minimumarea cap for the ends of hexagonal honeycomb cells, also remains open [27]. It is conjectured that the minimumsurfacearea fourbubble cluster, for given bubble volumes, is given by the stereographic projection of a fourdimensional simplex, but this has not been proven, and there are sixbubble clusters for which the numericallycomputed surfaces separating the bubbles are not spherical [53]. Even as simplesounding a problem as the double bubble conjecture (proving that the optimal structure for clusters of two bubbles with two fixed volumes has three spherical patches sharing a common circle) took many years to solve [30, 34].
Twodimensional soap films have also seen much prior research, both as a test case for threedimensional theories and in the context of the “soap bubble computer”. In this device, pegs are placed between two glass plates at specified locations; a soap film that connects the pegs forms a minimal (though generally not minimum) Steiner network, providing a heuristic and approximate physical solution to an NPcomplete problem [1, 6, 19, 32, 35]. Another result on twodimensional soap films provides a planar analogue of the Kelvin conjecture: the minimumlength enclosure for an infinite set of bubbles of equal areas is a hexagonal tiling of the plane [27, 28], and similar tilings arise also as the minimumlength enclosure for finite clusters of equal bubbles [12].
John Sullivan has suggested that “we might look for foams as relaxations of Voronoi decompositions” [53]. Our use of power diagrams to construct bubble clusters may be seen as a validation of Sullivan’s suggestion.
2 Preliminaries
2.1 Möbius Transformations
Möbius transformations may also be defined from inversions. If \(O\) is a circle centered at point \(o\) with radius \(r\), inversion through \(O\) maps any point \(p\) to another point \(q\) on the ray from \(o\) through \(p\), at distance \(r^2/d(o,p)\) from \(o\). \(O\) is fixed by the inversion, the inside of \(O\) becomes the outside and vice versa, and \(o\) trades places with \(\infty \). In the limiting case of a line, inversion becomes reflection across the line. Every Möbius transformation may be represented as a composition of a finite set of inversions.
Möbius transformations are conformal mappings: they preserve the angle of every two incident curves. Since they preserve both circularity and angles, they preserve the property of being a Lombardi drawing. Less obviously, we will see later that they also preserve the property of being a twodimensional soap bubble cluster.
2.2 Hyperbolic Geometry
To understand our algorithms, it will be helpful to review some qualitative features of hyperbolic geometry, avoiding detailed calculations [8].
In the upper halfspace model of threedimensional hyperbolic space (also called the Poincaré halfspace model), hyperbolic space is represented by an open halfspace of threedimensional Euclidean space, but with a nonEuclidean distance metric. The boundary plane of the Euclidean halfspace does not belong to the hyperbolic space but may be thought of as the set of “points at infinity” for the hyperbolic space. It is convenient to add one more point \(\infty \) to this boundary plane, so that it becomes a copy of \({\mathbb {S}}^2\). Hyperbolic lines are represented by Euclidean semicircles that meet the boundary plane at right angles, or by Euclidean rays perpendicular to the boundary plane; the vertical rays may be viewed as the limiting case of semicircles with one endpoint at \(\infty \). Hyperbolic planes are represented by Euclidean hemispheres that meet the boundary plane at right angles in a circle, or by halfplanes that touch the point \(\infty \) and meet the boundary plane perpendicularly in a line.
Hyperbolic space is locally Euclidean: within sufficiently small balls, hyperbolic distances may be approximated arbitrarily well by Euclidean distances. For every two reference frames (a choice of a point within the space, and a system of Cartesian coordinates for the local Euclidean geometry near that point) a unique symmetry of the space takes one reference frame into the other. The symmetries of hyperbolic space may be extended to the plane at infinity, on which they act as Möbius transformations. Every Möbius transformation of \({\mathbb {S}}^2\) corresponds uniquely to a symmetry of hyperbolic space.
2.3 Circle Packing
The Koebe–Andreev–Thurston circle packing theorem [52] states that the vertices of every maximal planar graph may be represented by circles with disjoint interiors, such that two vertices are adjacent if and only if the corresponding two circles are tangent. The representation is unique up to Möbius transformations. An alternative version of the theorem, which we use in some of our graph drawing results, states that the vertices of every 3connected planar graph and of its dual graph may be represented by a combined system of circles in such a way that two circles are tangent if they represent adjacent vertices in the same graph, cross orthogonally if they represent an adjacent vertexface pair (consisting of one vertex from each graph), and otherwise are disjoint. Again, this representation is unique up to Möbius transformations [7].

It chooses a circle in the packing, and computes the angular defect by which its neighboring circles either fail to surround it or surround it by a larger angle than \(2\pi \).

It determines a representative radius for the neighboring circles such that, if they all had the representative radius (in place of their actual radii) they would have the same defect

It replaces the radius of the central circle by a new value such that, if the surrounding circles all had the representative radius, the angular defect would be zero.
2.4 Triangle Centers
A triangle center is a function from Euclidean triangles to Euclidean points that is equivariant under similarities of the Euclidean plane, in the sense that performing a similarity transformation and then constructing the center gives the same result as constructing the center and then performing the similarity transformation. Hundreds of triangle centers are known, and they include many wellknown points determined from a triangle, such as its centroid, circumcenter, incenter, and orthocenter [37]. It is convenient, in computing the position of a triangle center, to use barycentric coordinates, weights for which the center is the weighted average of the vertices. Alternatively, triangle centers may be specified using trilinear coordinates, triples of numbers proportional to the distances from each of the triangle’s sides. If the trilinear coordinates are \(\alpha :\beta :\gamma \) then the barycentric coordinates are \(\alpha \,a:\beta \,b:\gamma \,c\) where the factors \(a\), \(b\), and \(c\) are the lengths of the triangle sides opposite the vertex whose weight is \(\alpha \), \(\beta \), or \(\gamma \) respectively.
3 Power Diagram
In this section we use threedimensional hyperbolic geometry to construct, from a given set \(\mathcal {D}\) of disks (or complements of disks) in the plane, a diagram \(M(\mathcal {D})\) that partitions the plane into regions surrounding each disk, separated from each other by circular arcs. This diagram will be equivariant under Möbius transformations in the sense that, for every Möbius transformation \(\mu \), \(\mu (M(\mathcal {D}))=M(\mu (\mathcal {D}))\).
3.1 Construction
To construct \(M(\mathcal {D})\), let \(\varPi \) be the plane containing \(\mathcal {D}\), embed \(\varPi \) into a threedimensional Euclidean space, let \(\varPi ^+\) be one of the two Euclidean halfspaces having \(\varPi \) as its boundary, and reinterpret \(\varPi ^+\) as a Poincaré halfspace model of threedimensional hyperbolic space. Then, the circle bounding each disk \(D_i\in \mathcal {D}\) models the set of limit points of a hyperbolic plane \(P_i\) in this space, and the disk itself is the set of limit points of a hyperbolic halfspace \(H_i\). Define the signed distance between a hyperbolic point \(q\) and \(H_i\), for \(q\notin H_i\), to be the positive distance from \(q\) to \(P_i\), and define the signed distance for \(q\in H_i\) to be the negation of the distance from \(q\) to \(P_i\).
The minimization diagram of this signed distance function is a partition of the hyperbolic space into cells \(C_i\) such that, within cell \(C_i\), the signed distance from any point of the cell to \(H_i\) is smaller than the signed distance to every other halfspace \(H_j\). This diagram is directly defined only for points within the hyperbolic space—the signed distance is undefined or infinite for points of the boundary plane \(\varPi \). However, the minimization diagram may be extended to \(\varPi \) by letting the extended cell \(\hat{C}_i\) be the topological closure of \(C_i\) in the halfspace model. We define \(M(\mathcal {D})\) to be the restriction of this extended minimization diagram to the plane \(\varPi \) containing the given disks. That is, it is the partition of \(\varPi \) determined by the cells \(\hat{C}_i\cap \varPi \).
3.2 Properties
Lemma 1
For every Möbius transformation \(\mu \), \(\mu (M(\mathcal {D}))=M(\mu (\mathcal {D}))\).
Proof
Because it is defined using only notions intrinsic to hyperbolic geometry (halfspaces and distance), the minimization diagram from which \(M(\mathcal {D})\) is defined is invariant under hyperbolic isometries. The result follows from the correspondence between hyperbolic isometries and Möbius transformations: each hyperbolic isometry restricts to a Möbius transformation of the boundary plane of the halfspace model of hyperbolic geometry, and every Möbius transformation comes from a hyperbolic isometry in this way. \(\square \)
Lemma 2
The boundaries of the cells in \(M(\mathcal {D})\) are circular arcs or subsets of straight lines.
Proof
Let \(D_i\) and \(D_j\) be any two members of \(\mathcal {D}\). First, suppose that \(D_i\) does not contain \(D_j\) and \(D_j\) does not contain \(D_i\). In this case, we may choose an appropriate Möbius transformation \(\mu \) such that \(\mu (D_i)\) and \(\mu (D_j)\) are both disks (rather than complements of disks) with equal radii. By symmetry, \(M(\{\mu (D_i),\mu (D_j)\})\) must have two halfplane cells, separated from each other by the line that perpendicularly bisects the centers of \(\mu (D_i)\) and \(\mu (D_j)\).
Alternatively, suppose that one of the two sets \(D_i\) and \(D_j\) contains the other; without loss of generality, \(D_i\) contains \(D_j\). In this case, we may choose an appropriate Möbius transformation \(\mu \) such that \(\mu (D_i)\) and \(\mu (D_j)\) are both disks (rather than complements of disks) that are concentric. For any point \(q\) of hyperbolic space, the signed distance to \(H_j\) will always be smaller than the signed distance to \(H_i\), so in this case \(M(\{\mu (D_i),\mu (D_j)\})\) consists of a single cell with no boundary.
This case analysis, together with Lemma 1 and the circlepreserving properties of Möbius transformations, shows that whenever two members of \(\mathcal {D}\) determine adjacent cells of \(M(\mathcal {D})\), the boundary separating these cells is a circular arc or a subset of a straight line, as the lemma states. \(\square \)
We remark that in the case of two disks that both have nonempty cells (i.e. the disks cross, are disjoint, or have disjoint complements) the boundary between the two cells lies on a midcircle (also known as a circle of antisimilitude) of the two circles that bound the disks. The midcircle is defined by the property that an inversion through the midcircle takes one disk to the other.
3.3 Radial Power Distance
Although the hyperbolic point of view makes Möbius invariance easy to prove, it is not easy to use in algorithms. As we show below, \(M(\mathcal {D})\) can also be defined intrinsically in Euclidean geometry, as the minimization diagram of a particular function defined by a Euclidean construction.
Given a point \(q\) in the Euclidean plane, and a disk \(D_i\) defined by its center point \(c_i\) and radius \(r_i\), let \(d_i\) be the Euclidean distance from \(q\) to \(c_i\), and define the radial power distance from \(q\) to \(D_i\) to be \((d_i^2r_i^2)/2r_i\). We may similarly define the radial power distance for a disk complement \(D_i\), by using the same formula and letting \(r_i\) be the signed radius of the disk or disk complement. That is, \(r_i\) is a positive or negative number whose absolute value is the radius of the circle bounding the disk or disk complement and whose sign determines whether it is a disk or a disk complement.
We note that this distance function has a similar form to the classical definition of the power of a circle, which may be defined algebraically as \(d_i^2r_i^2\) or geometrically (for points \(q\) outside a given disk \(D_i\)) as the length of a line segment that has \(q\) as one endpoint and whose other endpoint is tangent to \(D_i\). The power diagram [3] is the minimization diagram of the power distance, and we claim that our Möbiusinvariant power diagram \(M(\mathcal {D})\) coincides with the minimization diagram of the radial power distance.
To see the equivalence between the minimization diagrams for threedimensional hyperbolic distance and for radial power distance, we use a geometric reformulation of the problem of finding nearest neighbors to a query point \(q\). For a point \(q\) in hyperbolic space that is exterior to all of a set of halfspaces, the nearest halfspace may be found (just as in the Euclidean case) as the radius of the smallest sphere centered at \(q\) that touches at least one of the halfspaces, and this sphere is tangent to the halfspace or halfspaces it touches. Similarly, for a point \(q\) that is interior to some of the halfspaces, the minimum signed distance from \(q\) to a halfspace is the radius of the largest sphere centered at \(q\) that is contained entirely within at least one of the halfspaces, and again this sphere is tangent to the halfspace or halfspaces that minimize the signed distance. For a point \(q\) that is not within the hyperbolic space, but is instead a limit point of the space, the signed distance from \(q\) to the set of halfspaces defined from \(\mathcal {D}\) is undefined (all curves in hyperbolic space from \(q\) to other points have infinite length) but we may still determine the identity of the nearest neighbor of \(q\) (that is, the cell of \(M(\mathcal {D})\) containing \(q\)) in an analogous way. The geometric figure analogous to a set of concentric spheres, for a limit point \(q\) of the hyperbolic space, is a set of horospheres, sets that appear in the halfspace model of hyperbolic space as spheres tangent at \(q\) to the boundary plane. If \(q\) is exterior to all of the given halfspaces, then a hyperbolic halfspace \(H_i\) is a nearest neighbor to \(q\) if there exists a horosphere centered at \(q\) that is tangent to \(H_i\) and disjoint from all of the other halfspaces. If \(q\) is contained in some of the halfspaces, then a hyperbolic halfspace \(H_i\) is a nearest neighbor to \(q\) if there exists a horosphere centered at \(q\) that is tangent to and contained in \(H_i\), and that is not contained in any of the other halfspaces.
3.4 For Circle Packings
Lemma 3
Let \(\mathcal {D}\) consist of three mutually tangent disks or disk complements with disjoint interiors. Then \(M(\mathcal {D})\) is the image under a Möbius transformation of three infinite rays meeting at angles of \(2\pi /3\) to each other. Each ray image is tangent to two of the three disks.
Proof
We may find a Möbius transformation \(\mu \) taking \(\mathcal {D}\) to three congruent (and still tangent) disks, with their centers on the vertices of an equilateral triangle. By symmetry, \(M(\mu (\mathcal {D}))\) consists of three rays as described, bisecting the sides of the triangle. The result follows from Lemma 1. \(\square \)
Lemma 4
Let \(\mathcal {D}\) be a circle packing. Then for each disk \(D_i\) in \(\mathcal {D}\), the corresponding cell \(C_i\) of \(M(\mathcal {D})\) is simply connected, and is adjacent only to cells corresponding to disks tangent to \(D_i\) in the packing.
Proof
Let \(K_i\) be the intersection of the cells corresponding to \(D_i\) in the collection of diagrams \(M(\{D_i,D_j\})\), where \(D_j\) ranges over the disks tangent to \(D_i\). Clearly, \(C_i\subset K_i\), because for every point \(q\) that does not belong to \(K_i\), one of the disks \(D_j\) has smaller signed distance to \(q\) than \(D_i\).
However, it is not possible for \(C_i\) to be a proper subset of \(K_i\), because the sets of cells \(C_i\) and \(K_i\) both form a tessellation of the plane (a family of closed sets whose union covers the plane and whose interiors are disjoint). The sets \(C_i\) form a tessellation by their construction as the cells of a minimization diagram. The sets \(K_i\) form a tessellation by inspection: each of these sets consists of the disk \(D_i\) together with some portion of the neighboring triangular cusps between disks, so it cannot overlap with a set \(K_j\) that is not associated with a disk \(D_j\) tangent to \(D_i\), each point within a disk \(D_i\) is covered by the corresponding set \(K_i\), and each point within one of the triangular cusps is covered by one of the three corresponding sets \(K_i\). If any \(C_i\) were a proper subset of \(K_i\), the points in the difference of the two sets would not be covered by any cell \(C_i\), a contradiction of the tessellation property.
Because \(C_i\) is a subset but not a proper subset of \(K_i\), it must equal \(K_i\), which by construction has the properties claimed in the lemma. \(\square \)
When \(\mathcal {D}\) is a circle packing, each vertex of the drawing lies within the cusp formed by three mutually tangent circles. By Möbius invariance, this vertex must be placed at the isodynamic point of the triangle formed by the three points of tangency of this cusp. We may compute its position as the weighted average of the three tangency points, using the known formula for the barycentric coordinates of the isodynamic point to calculate its weights. Each circular arc of the drawing has two vertices as its endpoints and passes through one tangency point, which together determine its location. These facts allow a simple and direct lineartime construction of \(M(\mathcal {D})\) (given as input a combinatorial description of the neighbors to each disk \(D_i\) of \(\mathcal {D}\) in clockwise order around \(D_i\)) using only Euclidean geometry, without any need to perform computations that involve hyperbolic coordinates or distances.
4 Lombardi Drawing
In this section we apply our Möbiusinvariant power diagram to construct planar Lombardi drawings of all subcubic planar graphs, and of some fourregular planar graphs. However, as we show, not every fourregular planar graph has a planar Lombardi drawing.
4.1 Cubic Polyhedral Graphs

Construct the dual graph of the given input graph, a maximal planar graph, and its (unique) planar embedding.

Apply the Collins–Stephenson procedure to realize the dual maximal planar graph as the intersection graph of a collection of tangent circles \(C_i\).

Use quasiconvex programming to find a Möbius transformation of the circles taking them to a configuration in which one circle \(C_0\) is exterior to all the others, and maximizing the minimum radius of the internal circles.

Let \(\mathcal {D}\) be the set of disks and disk complements associated with the transformed circle packing, with one disk complement for the exterior circle \(C_0\) and a disk for each remaining circle. Construct the Möbiusinvariant power diagram \(M(\mathcal {D})\), place a vertex of the drawing at each point where three power diagram cells meet, and place an edge of the drawing on each arc separating two adjacent power diagram cells (Fig. 7).
Theorem 1
If we are given as input an \(n\)vertex 3regular 3connected planar graph, we can produce a planar Lombardi drawing for the graph in time \(T+O(n)\), where \(T\) denotes the time needed to find a circle packing dual to the given graph.
Proof
The fact that this is a Lombardi drawing (with circular arcs meeting at angles of \(2\pi /3\)) follows from Lemma 3. Once a circle packing is constructed, the phase of the algorithm that computes a Möbius transformation maximizing the minimum circle radius can be performed in linear time [4]. The linear time bound for the construction of \(M(\mathcal {D})\) is as described in Sect. 3.4. \(\square \)
4.2 TwoConnected Subcubic Graphs
We next describe how to extend our Lombardi drawing technique to 2connected graphs. A 2connected graph may have vertices of degree two or three, but the degree2 vertices may be suppressed, forming a 3regular multigraph with the same connectivity. If the multigraph has a planar Lombardi drawing, so does the original graph with the degree2 vertices, as the vertices may be restored by subdividing edges (placing new vertices in the interior of the circular arc representing the edge) without changing the Lombardi property. Therefore, within this section we assume that the given graph is 3regular.
We use a standard tool for decomposing 2connected graphs, the SPQR tree [13, 14, 26, 33, 41]. An SPQR tree for a graph \(G\) is a tree structure in which each tree node is associated with a graph \(C_i\), known as a 3connected component of \(G\). In each 3connected component, some of the edges are labeled as “virtual”, and each edge of the SPQRtree is labeled by a pair of oriented virtual edges from its two endpoints; each virtual edge of a component is associated in this way with exactly one tree edge. The given graph \(G\) may be formed by gluing the components \(C_i\) together, by identifying pairs of endpoints of virtual edges according to the labeling of the tree edges, and then deleting the virtual edges themselves. The nodes of an SPQR tree have three types: R nodes, in which the associated graph is 3connected, S nodes, in which the associated graph is a cycle, and P nodes, in which the associated graph is a bond graph, a multigraph with two vertices and three or more parallel edges. With the additional constraint that no two S nodes and no two P nodes may be adjacent, the SPQR tree is uniquely determined from \(G\), and may be constructed in linear time.
The SPQR trees of 3regular graphs have an additional structure that will be helpful for us:
Lemma 5
(Pootheri [46], Eppstein and Mumford [22]) A 2connected graph \(G\) is 3regular if and only if each edge in its SPQR tree has exactly one S node as an endpoint, each S node is associated with an even cycle that alternates between virtual and nonvirtual edges, each P node is associated with a threeedge bond graph, and each R node is associated with a graph that is itself 3regular.
Lemma 6
Let \(G\) be a graph with a planar Lombardi drawing, and let \(e\) be any edge of \(G\). Then, for any \(\varepsilon >0\) there is a planar Lombardi drawing of \(G\) in which \(e\) lies on the outer face of the drawing and forms a circular arc that covers an angle of its circle greater than or equal to \(2\pi (1\varepsilon )\).
Proof
Transform the given drawing by an inversion whose center is near but not on the midpoint of \(e\). \(\square \)
Theorem 2
If we are given as input an \(n\)vertex 2connected planar graph with maximum degree 3, we can produce a planar Lombardi drawing for the graph in time \(T+O(n)\), where \(T\) denotes the time needed to find and optimally transform a family of circle packings with total cardinality \(O(n)\).
Proof
Suppress the degreetwo vertices of the given graph to produce a 3regular 2connected graph, decompose it into an SPQR tree with the additional structure of Lemma 5, and use Theorem 1 to construct a planar Lombardi drawing of the 3connected component associated with each \(R\) node. In each S node of the tree, glue the drawings from the adjacent tree nodes together by using Lemma 6 to expand the virtual edges, move these edges to the outer face of their drawings, and shrink the rest of the drawings, and then align the circular arcs representing their virtual edges so that they all lie on a common circle (Fig. 9). Finally, subdivide the edges of the drawing as necessary to restore the suppressed degreetwo vertices. \(\square \)
4.3 Subcubic Graphs with Bridges
We are finally ready to describe our algorithm for constructing planar Lombardi drawings for arbitrary subcubic planar graphs, possibly including bridge edges.
Our algorithm begins by deleting all the bridge edges from the graph, and suppressing all degree two vertices, leaving a collection of isolated vertices and 2connected 3regular subgraphs. It then constructs the SPQR tree of each 2connected subgraph, forming its 3connected components, and applies Theorem 1 to construct a planar Lombardi drawing for each R node in each SPQR tree.
Next, we glue the components within each SPQR tree together, as in Theorem 2. At the same time, for each isolated vertex created by the bridge deletion step, we create a drawing of a claw \(K_{1,3}\) consisting of three unitlength line segments meeting at \(120^\circ \) angles. Additionally, we unsuppress the remaining degreetwo vertices of the original graph, by subdividing edges of these drawings. After this step, we have separate drawings for each block (biconnected component) of the original graph, in which each bridge incident to the block has a degreeone vertex at its other end.
Finally, for each two blocks that should be connected by a bridge, we apply an inversion centered on the degreeone endpoint of the bridge, causing the bridge edge to become an infinite ray exterior to the drawing. After this transformation the two blocks may be glued together by making their two copies of the bridge edge lie on the same line. This completes the proof of the main result of this section:
Theorem 3
If we are given as input an \(n\)vertex planar graph with maximum degree 3, we can produce a planar Lombardi drawing for the graph in time \(T+O(n)\), where \(T\) denotes the time needed to find and optimally transform a family of circle packings with total cardinality \(O(n)\).
4.4 Halin Graphs
The method of constructing Lombardi drawings from a packing of disjoint tangent circles, used above for 3regular polyhedral graphs, applies to some other graphs as well. We define a system of interiordisjoint disks \(\mathcal {D}\) to be wellcentered if the Möbiusinvariant power diagram \(M(\mathcal {D})\) forms a system of arcs and vertices that forms a Lombardi drawing of the planar dual to the intersection graph of \(\mathcal {D}\). Equivalently, \(\mathcal {D}\) is wellcentered when its diagram has one vertex within each connected component of the complement \(\mathbb {R}^2{\setminus }\mathcal {D}\) of \(\mathcal {D}\), and when all cell boundaries incident to that vertex meet at equal angles. If a planar graph \(G\) has a dual graph that can be represented by a wellcentered system of disks \(\mathcal {D}\), then \(M(\mathcal {D})\) will form a Lombardi drawing of \(G\).
As an example of a system of disks that is not a disk packing but is wellcentered, consider \(k\) congruent disks with centers all on a common circle, sized so that each disk is tangent to its two neighbors on the circle. In this case, the intersection graph of \(\mathcal {D}\) is a \(k\)cycle, and \(M(\mathcal {D})\) is a system of \(k\) rays meeting at equal angles. By performing an appropriate Möbius transformation of \(\mathcal {D}\), we may perturb it so that \(M(\mathcal {D})\) forms a system of \(k\) circular arcs, meeting at equal angles at two points, one of which is the transformation of the center of the circle and the other of which is the transformation of \(\infty \). This is a Lombardi drawing of a multigraph with \(k\) edges and two vertices, the planar dual of the \(k\)cycle.
As a less trivial example, let \(G\) be any Halin graph [29], a 3connected planar graph formed from a plane tree (with no degreetwo vertices) by adding a cycle connecting its leaves in the order given by the plane embedding of the tree. As a polyhedral graph, \(G\) can be represented (uniquely up to Möbius transformation) by a pair of circle packings \(\mathcal {D}\) and \(\mathcal {D}'\), where the intersection graph of \(\mathcal {D}\) is the dual graph of \(G\), the intersection graph of \(\mathcal {D}'\) is \(G\) itself, and adjacent pairs of vertices in \(G\) and its dual (corresponding to an incident vertexface pair in \(G\)) are represented by orthogonal circles in \(\mathcal {D}\) and \(\mathcal {D}'\). We claim that \(\mathcal {D}\) is wellcentered. For, if \(v\) is a vertex on the outer face of \(G\), it has degree three and is surrounded by three mutually tangent disks, for which wellcenteredness follows from Lemma 3. Alternatively, if \(v\) is an interior vertex of \(G\), then the \(k\) circles surrounding \(v\) (where \(k\) is the degree of \(v\) in \(G\)) are all orthogonal to the circle representing \(v\) and tangent to the circle representing the outer face of \(G\). It follows that the set of circles surrounding \(v\) is Möbiusequivalent to the system of \(k\) concyclic circles described above for the \(k\)cycle, and so is wellcentered. Therefore, \(M(\mathcal {D})\) is a Lombardi drawing of \(G\).
It was previously known that every Halin graph had a planar Lombardi drawing [18] but the previous construction involved certain arbitrary choices. In contrast, this method, based as it is on the unique orthogonal circle packing for 3connected planar graphs and their duals, provides a principled and unique way of making those choices for every Halin graph.
4.5 FourRegular Medial Graphs
4.6 A 4Regular Graph with No Planar Lombardi Drawing
The important parts of this graph, for our purposes, are the six labeled vertices; the remaining vertices are present only to make the graph 4regular, and could be contracted to single vertices to produce a simpler eightvertex counterexample to the existence of planar Lombardi drawings while sacrificing regularity. Note that (up to automorphisms) the labeled part of \(G_{18}\) has a unique planar embedding, and that the two quadrilateral faces \(abfc\) and \(adfe\) have their two opposite vertices \(a\) and \(f\) in common. Because \(G_{18}\) is 4regular, it has a Lombardi drawing with a circular layout, with the arcs representing its edges forming \(45^\circ \) angles to the circle on which the vertices are drawn [18]. However, a circular Lombardi drawing of this type is not guaranteed to be planar, and we will show that \(G_{18}\) does not have a planar Lombardi drawing.
A key idea in the proof is to relate quadrilateral faces of any possible drawing, such as faces \(abfc\) and \(adfe\), with circles, as the following lemma shows.
Lemma 7
Let \(pqrs\) be a quadrilateral face of a planar Lombardi drawing, and suppose that all four of its vertices have degree four. Then there exists a circle or line through all four of the points \(p\), \(q\), \(r\), and \(s\), that does not cross any edges of \(pqrs\).
Proof
If both \(qr\) and \(rs\) are drawn as curved arcs (rather than straight line segments) in the transformed drawing, let \(\theta \) be the angle \(qr\) subtends on its circle; in order for all the angles of the figure to be right, \(rs\) must subtend the complementary angle \(\pi \theta \). The angle between arc \(qr\) and line segment \(qr\) (at either of the two intersection points of these two curves) is \(\theta /2\), and symmetrically the angle between arc \(rs\) and line segment \(rs\) is \((\pi \theta )/2\). Angle \(qrs\) is equal to the sum of these two angles together with the right angle between the two arcs; that is, it is \(\theta /2 + \pi /2 + (\pi \theta )/2 = \pi \). Thus, \(q\), \(r\), and \(s\) are collinear.
If one of \(qr\) and \(rs\) (say \(qr\)) is not a curved arc, but a straight line segment, it must be axisparallel in order to form a right angle at \(q\), and the other arc \(rs\) must be a semicircle in order to form right angles at \(r\) and \(s\). Again, in this case, \(q\), \(r\), and \(s\) are collinear.
In either case, the line \(O\) through the three points \(q\), \(r\), and \(s\) also passes through \(p=\infty \) (because every line passes through \(\infty \)). Reversing the inversion we initially performed, \(O\) becomes the desired circle. It can’t cross the circular arcs of \(pqrs\) because two circles can only intersect at two points and each of these arcs already intersects \(O\) at its two endpoints. \(\square \)
Theorem 4
Graph \(G_{18}\) has no planar Lombardi drawing.
Proof
For this placement, the edge \(ce\) must exit vertex \(c\) towards the interior of circle \(abfc\), because it forms a \(180^\circ \) angle with either edge \(ac\) or edge \(fc\), both of which are exterior to the circle. It must then cross circle \(abfc\) again, turning clockwise as it does, in order to stay within quadrilateral \(aefc\) and reach vertex \(e\). By a symmetric argument it must exit vertex \(e\) towards the exterior of circle \(adfe\), because it forms a \(180^\circ \) angle with either edge \(ae\) or edge \(fe\), both of which are interior to the circle. Thus, coming from \(c\), it must cross circle \(adfe\), turning counterclockwise as it does, to reach the circle a second time. But in a Lombardi drawing, edge \(ce\) must be drawn as a circular arc, which cannot turn clockwise for part of its length and counterclockwise for part of its length. Therefore, this placement is impossible.
The remaining case arises when circles \(abfc\) and \(adfe\) coincide. But in this case, by similar reasoning, edge \(ce\) must exit \(c\) towards the interior of the single circle, cross the circle, and reach \(e\) from the exterior, an impossibility since a circular arc cannot have three intersection points with a circle. \(\square \)
5 Soap Bubbles
As we show in this section, our Möbiusinvariant power diagram can be used to construct planar soap bubble clusters with any realizable topology, leading to a graphtheoretic characterization of these clusters.
5.1 A Mathematical Model of Soap Bubbles

Each twodimensional surface has constant mean curvature. That is, the two principal curvatures of the surface take the same average value at all points in the surface.

At each onedimensional junction of surfaces, exactly three surfaces meet, and they form dihedral angles of \(2\pi /3\) with each other. Such a junction is called a Plateau border. A Plateau border may either be a simple closed space curve or a curve with two endpoints, in either case touching the same three surfaces for its entire length.

At each endpoint of a Plateau border, exactly four Plateau borders and six twodimensional surfaces meet, and the borders form angles of \(\cos ^{1}(1/3)\) with each other (the same angle that is formed by rays from the center of a regular tetrahedron through its vertices).
In the case of a soap bubble cluster formed between two flat plates, the bubble walls are perpendicular to the plates, and all crosssections of the bubbles by a plane parallel to one of the plates are congruent to each other. In this case, the principal curvature in the direction perpendicular to the plates is zero, and we may simplify both laws to describe the planar figure formed by the crosssections.

The figure consists of onedimensional curves of constant curvature; that is, circular arcs or line segments that do not cross each other.

At each endpoint of one of these arcs or segments, exactly three curves meet, and they form angles of \(2\pi /3\) with each other.

The curvature of any one of the circular arcs (the inverse of its radius) is proportional to the difference in pressure between the bubbles it separates. Bubbles with the same pressure as each other are separated by line segments, with zero curvature.
5.2 Localization of the Young–Laplace Equation
It is convenient to replace the Young–Laplace equation with a more local criterion, using a signed variation of curvature. Given a circular arc ending at a point \(p\), of curvature \(c\ge 0\), we define the signed curvature of the arc at \(p\) to be \(c\) whenever the arc curves clockwise as it leaves \(p\), and to be \(c\) whenever it curves counterclockwise. For line segments, of course, the signed curvature is zero.
Lemma 8
A finite collection of circular arcs and line segments forms a planar soap bubble cluster if and only if it obeys Plateau’s laws and, at each endpoint of an arc or segment, the sum of the signed curvatures of the three incoming curves is zero.
Proof
In one direction, in a planar soap bubble cluster, let \(x\), \(y\), and \(z\) be the pressures of three bubbles that meet at a point. By assumption, the cluster obeys the Young–Laplace equation, according to which the three signed curvatures of the arcs at the point are proportional to the pressure differences \(xy\), \(yz\), and \(zx\). The fact that these three signed curvatures sum to zero follows from the simple algebraic fact that \((xy)+(yz)+(zx)=0\).
In the other direction, suppose that finitely many circular arcs obey Plateau’s laws and have signed curvatures adding to zero at each point where three arcs meet. We must assign pressures to the bubbles formed by the arcs, such that the curvatures obey the Young–Laplace equation. Assign zero pressure to the outside region. For each bounded bubble \(B\), choose arbitrarily a curve \(c\) that starts in the outside region, ends within \(B\), meets the arcs only at proper crossing points interior to an arc, and has finitely many crossing points. Set the pressure within \(B\) to the sum of the pressure differences determined by the curvatures of each crossed arc.
To show that this system of pressures obeys the Young–Laplace equation, consider any two bubbles \(B_1\) and \(B_2\) separated by an arc \(A\), and let \(c_1\) and \(c_2\) be the curves from the outside region to \(B_1\) and \(B_2\) by which their pressures were determined. We may link \(c_1\) and \(c_2\) by another curve that remains entirely within the outside region, forming a single (possibly selfcrossing) curve that connects \(B_1\) to \(B_2\), and we may continuously deform this curve, crossing finitely many triple points of the system of arcs as we do, until it forms a line segment crossing arc \(A\). Each time this deformation causes the curve to cross a triple point, the assumption that the curvatures at that point add to zero ensures that the sum of the pressure differences of crossings along the curve remains constant. Before the deformation, this sum was the pressure difference between \(B_1\) and \(B_2\) in our system of pressures, and after the deformation, it is the pressure difference required between bubbles \(B_1\) and \(B_2\) for the curvature of \(A\) to obey the Young–Laplace equation. Since these two pressure differences are equal, \(A\) (and by the same argument every arc) obeys the equation. \(\square \)
An analogous result for bubbles on the sphere instead of the plane is in Quinn Maurmann’s appendix to [47].
When three threedimensional bubbles form a cluster in which all surface patches are spherical, it was known to Plateau that the three inner surface patches have centers of curvature that all lie on a single line [31]. Although centers of circles and collinearity of points are not Möbiusinvariant properties, we can restate the same collinearity property for planar bubble clusters in a Möbiusinvariant way, in terms of the crossing points of the circles. This restatement will allow us to prove that the Möbius transformation of a planar soap bubble cluster is itself another planar soap bubble cluster.
Lemma 9
 1.
The sum of the three signed curvatures of the arcs is zero.
 2.
The three center points \(C_i\) are collinear.
 3.
The three circles with centers \(C_i\) and radii \(r_i\) have two triple crossing points.
Proof
We partition the proof into four implications between the three conditions of the lemma.
\((1) \Rightarrow (2)\): Suppose that the three signed curvatures sum to zero; then one must have a different sign than the other two. Without loss of generality (by permuting the indices and by mirroring the configuration, if necessary) we may assume that the signed curvatures are \(1/r_1\), \(1/r_2\), and \(1/r_3\). By assumption, the sum of these three quantities is zero; by multiplying each term of this sum by \(r_1r_2r_3\) and rearranging, we obtain the equation \(r_1r_2+r_2r_3=r_1r_3\).
Note that the three lines \(XC_i\) form angles of \(\pi /3\) with each other, because they are perpendicular to the arcs, which meet at angles of \(2\pi /3\). The assumption on the signs of the curvatures implies that angles \(C_1XC_2\) and \(C_2XC_3\) must both equal \(\pi /3\), and angle \(C_1XC_3\) must equal \(2\pi /3\). Now consider the areas of the three triangles \(C_1XC_2\), \(C_2XC_3\), and \(C_1XC_3\). In any triangle, the area can be computed by the sideangleside formula as half the product of two adjacent side lengths with the sine of the angle formed by the same two sides. Thus, these triangle areas are \(\frac{1}{2} r_1r_2\sin \frac{\pi }{3}\), \(\frac{1}{2} r_2r_3\sin \frac{\pi }{3}\), and \(\frac{1}{2} r_1r_3\sin \frac{2\pi }{3}\) respectively. But \(\sin \pi /3=\sin 2\pi /3\), so the alreadyobtained equation \(r_1r_2+r_2r_3=r_1r_3\) implies that triangles \(C_1XC_2\) and \(C_2XC_3\) together have the same total area as triangle \(C_1XC_3\). This could only happen if the three centers \(C_1\), \(C_2\), and \(C_3\) are collinear, for otherwise the sum of the areas of \(C_1XC_2\) and \(C_2XC_3\) would differ from the area of \(C_1XC_3\) by the area of triangle \(C_1C_2C_3\), which is zero only when these three points are collinear.
\((2) \Rightarrow (1)\): By (2) the three center points \(C_i\) are collinear; assume without loss of generality that \(C_2\) lies between \(C_1\) and \(C_3\) on their common line. Because the three centers \(C_1\), \(C_2\), and \(C_3\) form angles of \(\pi /3\) rather than \(2\pi /3\), the signed curvature of the middle center \(C_2\) has the opposite sign to the signed curvature of the other three curvatures; we may assume without loss of generality (by mirror reversing the configuration if necessary) that these three signed curvatures are \(1/r_1\), \(1/r_2\), and \(1/r_3\). As in the previous case, the three lines \(XC_i\) form angles of \(\pi /3\) with each other so angles \(C_1XC_2\) and \(C_2XC_3\) must both equal \(\pi /3\), angle \(C_1XC_3\) must equal \(2\pi /3\), and by collinearity the two triangles \(C_1XC_2\) and \(C_2XC_3\) together disjointly cover the same region of the plane as the single triangle \(C_1XC_3\).
\((2) \Rightarrow (3)\): The three circles have at least one triple crossing point, at \(X\). Let \(\ell \) be the line through the three centers, assumed to exist by (2). Then because \(\ell \) passes through each circle center, a reflection across \(\ell \) is a symmetry of each circle and therefore of the whole configuration of three circles. The point \(X\) cannot lie on \(\ell \), because two circles centered on a line cannot cross at a point that is also on the line, they can only meet at a point of tangency, violating the assumption that the arcs meet at angles of \(2\pi /3\). Therefore, the reflection of \(X\) across \(\ell \) is also a triple crossing point, and the three circles have two triple crossings as (3) states.
(3)\(\Rightarrow (2)\): For any two intersecting circles, it is necessarily true that their centers lie on the perpendicular bisector of the chord connecting their two intersection points. But by the assumption of (3) that there are two triple crossing points, the chords defined by each pair of the three given circles coincide; therefore, their perpendicular bisectors also coincide in a line \(\ell \) that contains all three circle centers.\(\square \)
Lemma 10
 1.
The sum of the three signed curvatures of the arcs and segments is zero.
 2.
The three circles or lines containing the three arcs or line segments have two triple crossing points (possibly including the point at infinity).
Proof

When there are no segments and three circular arcs, the lemma is just a simplified formulation of Lemma 9.

When there is one line segment and two circular arcs, the curvature sum is zero if and only if the two arcs are reflections of each other across the line segment (otherwise their two curvatures cannot cancel) and there is a second triple crossing point if and only if the same reflection condition is met (otherwise the two circles will cross the line in different points).

When there are two line segments and one circular arc, the sum of the curvatures is always nonzero (it equals the curvature of the circular arc), and there is only one triple crossing point (the two lines have their second intersection at infinity and their intersections with the circle at finite points).

When there are three line segments, the sum of the curvatures is always zero, as all curvatures are themselves zero, and the three lines meet at \(X\) and at the point at infinity, so both conditions are true.
This triple crossing property is closely related to Lemma 5.1 of [60] and to the existence and uniqueness of the standard double bubble, for which see e.g. Proposition 14.1 of [44].
5.3 Möbius Invariance
Möbius transformations do not preserve physically meaningful quantities of soap bubbles such as their pressures or the total length or area of soap film. They do not even preserve the finiteness of the bubbles: it is possible to find a transformation that takes the unbounded region of the plane to a bounded region and vice versa. Nevertheless, surprisingly, they transform soap bubble clusters into other soap bubble clusters. We outline a proof of Möbius invariance below.
Lemma 11
Let \(B\) be a planar soap bubble cluster, and let \(\mu \) be a Möbius transformation with the property that no curve or arc of \(B\) is transformed into a ray or double ray. Then \(\mu (B)\) is also a planar soap bubble cluster.
Proof
By Lemmas 8 and 10, \(B\) consists of arcs or segments meeting at angles of \(2\pi /3\) such that each three arcs that meet have circles forming two triple crossings. The meeting angles and the triple crossings of circles are preserved by Möbius transformation, so \(\mu (B)\) is also a collection of arcs or segments meeting at angles of \(2\pi /3\) such that each three arcs that meet have circles forming two triple crossings. By Lemma 10 again, the signed curvatures at each meeting point of \(\mu (B)\) add to zero, and by Lemma 8 again, \(\mu (B)\) is a planar soap bubble cluster. \(\square \)
5.4 Bridgelessness
Based on the Möbius invariance of planar soap bubble clusters, we prove in this section the necessity of our graphtheoretic characterization: every planar soap bubble cluster comes from a graph that is planar, 3regular, and 2connected.
It is clear that a planar soap bubble cluster must form a planar graph, and Plateau’s laws imply that it must be 3regular, so the nontrivial part of our characterization of soap bubble graphs is the claim that these graphs are 2vertexconnected, or equivalently (since they are threeregular) that they have no bridges. In the language of soap bubbles, this means that every arc or segment in the cluster separates two different bubbles. As we now prove, this is necessarily true for a planar soap bubble cluster.
Lemma 12
In a planar soap bubble cluster, no segment or arc can have the same bubble on both of its sides.
Proof
Assume for a contradiction that the cluster includes a segment or arc \(e\) that has the same bubble on both sides. Nonzero curvature of \(e\) would contradict the Young–Laplace equation, as the pressure is equal on both sides of \(e\). But if \(e\) is a line segment, then it is straightforward to find a Möbius transformation that transforms \(e\) into a curved arc. The resulting cluster again contradicts the Young–Laplace equation, and by Lemma 11, the untransformed cluster also contradicts the same equation. \(\square \)
5.5 Realizing Graphs as Soap Bubbles
As we now show, the steps of our Lombardi drawing algorithm that apply to 2connected or 3connected graphs generate soap bubble clusters, giving us an algorithmic proof that our necessary conditions for a graph to be the graph of a soap bubble cluster are also sufficient.
Lemma 13
Let \(\mathcal {D}\) be a set of three mutually tangent circles. Then their Möbiusinvariant power diagram \(M(\mathcal {D})\) is a double bubble formed by three circular arcs, line segments, or rays, meeting in two triple crossing points at angles of \(2\pi /3\), with signed curvatures summing to zero.
Proof
By Lemma 3, \(M(\mathcal {D})\) is the image under a Möbius transformation of three rays meeting at angles of \(2\pi /3\). These rays meet in two triple crossing points, the common apex of the rays and the point at infinity, and this triple crossing property is preserved under Möbius transformation. The claim that the curvatures of the transformed rays sum to zero follows from Lemma 10. \(\square \)
Theorem 5
A multigraph \(G\) can be realized as the arcs and junctions of a planar soap bubble cluster if and only if \(G\) is planar, 3regular, and bridgeless.
Proof
Planarity and 3regularity follow from Plateau’s laws. The requirement that a planar soap bubble cluster be bridgeless is Lemma 12. It remains to show that every planar, 3regular, and bridgeless graph \(G\) may be realized as a soap bubble.
If \(G\) is planar, 3regular, and 3connected, then (as in Sect. 4.1) \(G\) may be drawn as the Möbiusinvariant power diagram \(M(\mathcal {D})\) for a circle packing \(\mathcal {D}\) representing the dual graph of \(G\). At each vertex of the diagram, the regions for three mutually tangent circles of \(\mathcal {D}\) meet. By Lemma 13, the vertex is incident to three circular arcs meeting at angles of \(2\pi /3\) (satisfying Plateau’s laws), with signed curvatures summing to zero. Therefore, by Lemma 8, the diagram forms a planar soap bubble cluster representing \(G\).
Finally, if \(G\) is bridgeless, planar, and 3regular but not 3connected, it must be 2connected. In this case, as in Sect. 4.2 and Fig. 9, it may be formed by constructing an SPQR tree representing the 3connected components of \(G\), separately drawing each 3connected component as a double bubble or as the Möbiusinvariant power diagram of a circle packing, transforming these drawings so that they do not cross each other and so that the virtual edges that connect to each S node lie on a common circle, deleting the virtual edges, and drawing the real edges of the S node along the shared circle. As in the 3connected case, the drawing of each component obeys Plateau’s laws and has zero curvature sum at each vertex. By Lemma 11, these properties are preserved by the step of the drawing algorithm that transforms each component. The step of the algorithm that deletes the virtual edges and replaces them by real edges does not change the local geometry at any vertex of the drawing, so again it preserves the properties of obedience to Plateau’s laws and zero local curvature sum. Thus, after these steps we have a drawing that continues to obey these properties. By Lemma 8, the diagram forms a planar soap bubble cluster representing \(G\). \(\square \)
We note that, although our circle packing method is capable of realizing all graphs of planar soap bubble clusters, it is not capable of generating all valid geometries of planar soap bubble clusters. In particular, in the 3connected case, the clusters we generate have the property that within each bubble there is a circle tangent to all the arcs of the bubble, but this property does not hold for arbitrary soap bubble clusters. For instance, not all of the bubbles in Fig. 1 have this property.
5.6 Stability
So far, we have been considering only whether a bubble cluster is in equilibrium or not, but we may differentiate what kind of equilibrium a cluster is in by its stability, describing the relation between the energy of the equilibrium to the energy of nearby configurations. To do this, we need some additional definitions. In the case of bubble clusters, we may define a configuration to be a family of locallysmooth curves that partitions space into a fixed number of regions (where each region may not necessarily be connected). A neighborhood of a given configuration \(B\) is the set of all configurations for which the Hausdorff distance of each region to the corresponding region of \(B\) is within some threshold.
There are two natural ways of defining the energy of a configuration. If each bubble in the cluster contains a fixed quantity of a compressible gas, then the energy may naturally be defined as the sum of two terms, one for the tension of the bubble walls and the other for the pressure within the bubbles. That is, the energy is \(\gamma L+\sum P_i A_i\), where \(A_i\) is the area of the \(i\)th bubble, \(P_i\) is the difference of its pressure (modeled according to the ideal gas law) from ambient, \(L\) is the total length of the curves in the cluster, and \(\gamma \) is the surface tension, the constant of proportionality of the Young–Laplace equation. Alternatively, we may restrict the neighborhood of a configuration to maintain a fixed area for each bubble, and use only the first term \(\gamma L\) for the energy; this describes a limiting case in which each bubble contains a fixed quantity of incompressible liquid.
With these definitions for neighborhoods and energy, a stable equilibrium is a bubble cluster that uniquely attains the minimum energy. A metastable equilibrium is a bubble cluster that is not stable, but that has a neighborhood within which it uniquely attains the minimum energy. An unstable equilibrium is a bubble cluster for which all neighborhoods contain a cluster with lower energy. And a neutral equilibrium is a bubble cluster that is neither metastable nor unstable: every neighborhood contains a different cluster with equal or lower energy, but there exists a neighborhood that does not contain any lowerenergy state.
When all four kinds of equilibrium are allowed, Theorem 5 characterizes the graphs of equilibrium bubble clusters. However, disallowing unstable and neutral equilibria changes this characterization, as we now show. To do so, we use Möbius invariance again, to prove that non3connected clusters necessarily include cocircular features that are incompatible with stability.
Lemma 14
Let \(G\) be the graph of a planar soap bubble cluster \(B\), having two edges \(e_1\) and \(e_2\) such that \(G{\setminus }\{e_1,e_2\}\) is disconnected. Then in \(B\), \(e_1\) and \(e_2\) form cocircular arcs or collinear segments.
Proof
Suppose for a contradiction that \(e_1\) and \(e_2\) lie on distinct circles or lines. Then, we could find a point \(q\) that lies on the circle or line containing \(e_1\) (but does not belong to \(e_1\) itself), is disjoint from the circle or line containing \(e_2\), and is also disjoint from all other arcs of \(B\). By Lemma 11, a Möbius transformation \(\mu \) defined by inversion through \(q\) would transform \(B\) into another bubble cluster \(\mu (B)\), in which \(\mu (e_1)\) becomes a line segment while \(\mu (e_2)\) remains curved. But this contradicts the Young–Laplace equation, because both arcs must separate the same two bubbles and therefore must have the same curvature. This contradiction shows that \(e_1\) and \(e_2\) are cocircular. \(\square \)
Theorem 6
Let \(G\) be a planar graph that is not 3connected. Then \(G\) cannot be the graph of a stable or metastable bubble cluster, regardless of whether the energy is measured as \(\gamma L\) or \(\gamma L + \sum P_i A_i\).
Proof
We may assume that \(G\) is 3regular and bridgeless, for otherwise it is not the graph of a bubble cluster regardless of stability. Let \(B\) be a bubble cluster representing \(G\). The SPQR tree of \(G\) includes an S node with edges that alternate between real and virtual (Lemma 5). The removal of any two of its real edges \(e_1\) and \(e_2\) would split the graph into two separated components, so by Lemma 14 these two edges must be represented in \(B\) by arcs of the same circle. Because of this cocircularity, every neighborhood of \(B\) contains another isomorphic bubble cluster \(B'\) in which one of the two components of \(G{\setminus }\{e_1,e_2\}\) is rotated by some small angle \(\varepsilon \) with respect to the other around the circle containing \(e_1\) and \(e_2\). \(B'\) has the same total arc length as \(B\), and its bubbles all have the same volume and pressure as in \(B\), so it has the same energy as \(B\). For any neighborhood of \(B\), there will be a sufficiently small but nonzero rotation amount \(\varepsilon \) such that the rotated cluster belongs to the neighborhood. Therefore, \(B\) cannot be the unique minimum energy configuration in any neighborhood: it is at best in a neutral equilibrium, and cannot be stable or metastable. \(\square \)
6 Conclusions
We have developed a new Möbiusinvariant power diagram of circles. Using it, we showed that all planar graphs with maximum degree three (and some planar graphs of degree four) have planar Lombardi drawings, greatly extending the classes of graphs for which such drawings are known to exis. We have implemented our algorithm for the special case of 3connected 3regular graphs. We have also used the same diagrams to prove that twodimensional soap bubble clusters, obeying Plateau’s laws and the Young–Laplace equation, may be characterized graphtheoretically as the planar 3regular 2connected graphs, and we have made a preliminary investigation of the stability of the clusters constructed by our method.
The Lombardi drawings constructed by our new algorithm have a natural, organic shape, in which the outer face and all the interior faces are approximately circular. If the maximum number of edges per face of the input graph is bounded, then adjacent circles in the circle packing will have radii whose ratio is also bounded, from which it follows that the vertex spacing of the drawing is locally uniform. Our drawings automatically display any global cyclic or dihedral symmetries of the input graph, and may be used even in cases such as the truncated icosahedron which our previous methods, designed for graphs with a high degree of symmetry [18], are incapable of handling. They also display certain local symmetries of the graph, in the sense that, if \(G\) is a subgraph of a 3connected graph that is connected to the rest of the graph by exactly three edges, then every copy of \(G\) in one of our drawings can be transformed into every other copy of \(G\) by a Möbius transformation. Possible flaws in this approach, from the graph drawing point of view, are that the area of the drawing (scaled so that the shortest edge has unit length) may be exponential, that the coordinates of the vertices may not be possible to represent precisely (as integers or boundeddegree algebraic numbers) but instead must be approximated numerically, and that the time for computing these drawings depends on the accuracy of this numerical approximation rather than varying strongly polynomially with the input size.
Although our results greatly extend our knowledge of planar Lombardi drawings, other fundamental questions in this area remain unsolved. For instance, what is the complexity of testing whether a planar graph has a Lombardi drawing? It would also be of interest to determine the maximum number \(d\) such that all graphs of maximum degree \(d\), or all planar graphs of maximum degree \(d\), have Lombardi drawings that are not necessarily planar.
Much about the combinatorial geometry of soap bubbles still remains to be studied. Most immediately, it would be of interest to fully characterize the graphs of stable or metastable planar soap bubbles; we have shown that they must be 3connected, but do not know whether that is a sufficient condition. Infinite bubble clusters in the plane with translational symmetry may be viewed as covering spaces of finite clusters on a torus; can these clusters be characterized? This problem is made more difficult than the planar 3connected case by the inability to use Möbius transformations and the need to consider multigraphs and nonpolyhedral embeddings. As a faroff goal, we would eventually like to be able to characterize the cell complexes that can represent soap bubble clusters in three dimensions. However, even much simpler questions in this direction remain unanswered. For instance, is a threedimensional analogue of Lemma 12 valid, or can stable threedimensional soap bubble clusters include surfaces that have the same bubble on both sides?
Notes
Acknowledgments
This work was supported in part by NSF Grants 0830403 and 1217322 and by the Office of Naval Research under grant N000140811015. Portions of this work appeared in “Planar Lombardi drawings for subcubic graphs”, 20th International Symposium on Graph Drawing (GD 2012), LNCS 7704, SpringerVerlag, 2013, pp. 126–137, and in “The graphs of planar soap bubbles”, 29th ACM Symp. on Computational Geometry, 2013, pp. 27–36. The author is grateful to Frank Morgan and John Sullivan for helpful comments.
References
 1.Aaronson, S.: NPcomplete problems and physical reality. SIGACT News 36(1), 30–52 (2005)CrossRefGoogle Scholar
 2.Angelini, P., Eppstein, D., Frati, F., Kaufmann, M., Lazard, S., Mchedlidze, T., Teillaud, M., Wolff, A.: Universal point sets for planar graph drawings with circular arcs. In: Proceedings of the 25th Canadian Conference on Computational Geometry, pp. 117–122 (2013)Google Scholar
 3.Aurenhammer, F.: Power diagrams: properties, algorithms and applications. SIAM J. Comput. 16(1), 78–96 (1987)MathSciNetCrossRefMATHGoogle Scholar
 4.Bern, M., Eppstein, D.: Optimal Möbius transformations for information visualization and meshing. In: 7th Workshop Algorithms and Data Structures. Lecture Notes in Computer Science, vol. 2125, pp. 14–25. Springer, Beriln (2001).Google Scholar
 5.Bern, M., Eppstein, D.: Möbiusinvariant natural neighbor interpolation. In: Proceedings of 14th ACMSIAM Symposium. Discrete Algorithms (SODA’03), pp. 128–129 (2003). http://portal.acm.org/citation.cfm?id=644130
 6.Bern, M., Graham, R.: The shortestnetwork problem. Sci. Am. 260, 84–89 (1989)CrossRefGoogle Scholar
 7.Brightwell, G.R., Scheinerman, E.R.: Representations of planar graphs. SIAM J. Discrete Math. 6(2), 214–229 (1993)MathSciNetCrossRefMATHGoogle Scholar
 8.Cannon, J.W., Floyd, W.J., Kenyon, R., Parry, W.R.: Hyperbolic geometry. In: Levy, S. (ed.) Flavors of Geometry, vol. 31, pp. 59–115. Cambridge University Press, MSRI, Cambridge (1997)Google Scholar
 9.Chernobelskiy, R., Cunningham, K., Goodrich, M.T., Kobourov, S.G., Trott, L.: Forcedirected Lombardistyle graph drawing. In: van Kreveld, M.J., Speckmann, B. (eds.) Proceedings of 19th International Symposium on Graph Drawing. Lecture Notes in Computer Science, vol. 7034, pp. 320–331. Springer, Berlin (2011).Google Scholar
 10.Chrobak, M., Goodrich, M.T., Tamassia, R.: Convex drawings of graphs in two and three dimensions (preliminary version). In: Proceedings of 12th Symposium on Computational Geometry, pp. 319–328 (1996).Google Scholar
 11.Collins, C.R., Stephenson, K.: A circle packing algorithm. Comput. Geom. Theory Appl. 25(3), 233–256 (2003)MathSciNetCrossRefMATHGoogle Scholar
 12.Cox, S.J., Morgan, F., Graner, F.: Are large twodimensional clusters of perimeterminimizing bubbles of equalarea hexagonal or circular? (2012). PreprintGoogle Scholar
 13.Di Battista, G., Tamassia, R.: Incremental planarity testing. In: 30th Symposium on Foundations of Computer Science, pp. 436–441. IEEE (1989).Google Scholar
 14.Di Battista, G., Tamassia, R.: Online graph algorithms with SPQRtrees. In: 17th International Colloquium Automata, Languages and Programming. Lecture Notes in Computer Science, vol. 443, pp. 598–611. Springer, Berlin (1990).Google Scholar
 15.Došlić, T.: On some structural properties of fullerene graphs. J. Math. Chem. 31(2), 187–195 (2002)MathSciNetCrossRefMATHGoogle Scholar
 16.Duncan, C.A., Eppstein, D., Goodrich, M.T., Kobourov, S.G., Löffler, M.: Planar and polyarc Lombardi drawings. In: M.J. van Kreveld, B. Speckmann (eds.) Proceedings of 19th International Symposium on Graph Drawing. Lecture Notes in Computer Science, vol. 7034, pp. 308–319. Springer, Berlin (2011).Google Scholar
 17.Duncan, C.A., Eppstein, D., Goodrich, M.T., Kobourov, S.G., Nöllenburg, M.: Drawing trees with perfect angular resolution and polynomial area. In: U. Brandes, S. Cornelsen (eds.) Proceedings of 18th International Symposium on Graph Drawing. Lecture Notes in Computer Science, vol. 6502, pp. 183–194. Springer, Berlin (2011).Google Scholar
 18.Duncan, C.A., Eppstein, D., Goodrich, M.T., Kobourov, S.G., Nöllenburg, M.: Lombardi drawings of graphs. J. Graph Algorithms Appl. 16(1), 85–108 (2012)MathSciNetCrossRefMATHGoogle Scholar
 19.Dutta, P., Khastgir, S.P., Roy, A.: Steiner trees and spanning trees in sixpin soap films. Am. J. Phys. 78(2), 215–221 (2010)CrossRefGoogle Scholar
 20.Eppstein, D.: Quasiconvex programming. In: Goodman, J.E., Pach, J., Welzl, E. (eds.) Combinatorial and Computational Geometry, vol. 52, pp. 287–331. Cambridge University Press, MSRI, Cambridge (2005)Google Scholar
 21.Eppstein, D., Dillencourt, M.B.: Uninscribable 4regular polyhedron. Electronic Geometry Models p. 2003.08.001 (2003). http://www.egmodels.de/2003.08.001/
 22.Eppstein, D., Mumford, E.: Steinitz theorems for orthogonal polyhedra. In: 26th Symposium on Computational Geometry, pp. 429–438. ACM (2010).Google Scholar
 23.Fortes, M.A., Vaz, M.F., Cox, S.J., Teixeira, P.I.C.: Instabilities in twodimensional flower and chain clusters of bubbles. Colloids Surf. A 309(1–3), 64–70 (2007)CrossRefGoogle Scholar
 24.Frucht, R.: Herstellung von Graphen mit vorgegebener abstrakter Gruppe. Compos. Math. 6, 239–250 (1939).Google Scholar
 25.Grinberg, È.J.: Plane homogeneous graphs of degree three without Hamiltonian circuits. In: Latvian Math. Yearbook 4, pp. 51–58. Izdat. “Zinatne”, Riga (1968)Google Scholar
 26.Gutwenger, C., Mutzel, P.: A linear time implementation of SPQRtrees. In: 8th International Symposiun on Graph Drawing. Lecture Notes in Computer Science, vol. 1984, pp. 77–90. Springer, Berlin (2001)Google Scholar
 27.Hales, T.C.: Cannonballs and honeycombs. Notices Am. Math. Soc. 47(4), 440–449 (2000)MathSciNetMATHGoogle Scholar
 28.Hales, T.C.: The honeycomb conjecture. Discrete Comput. Geom. 25(1), 1–22 (2001)MathSciNetCrossRefMATHGoogle Scholar
 29.Halin, R.: Studies on minimally \(n\)connected graphs. In: Combinatorial Mathematics and Its Applications (Proc. Conf., Oxford, 1969), pp. 129–136. Academic Press, London (1971)Google Scholar
 30.Hass, J., Schlafly, R.: Double bubbles minimize. Ann. Math. 151(2), 459–515 (2000)MathSciNetCrossRefMATHGoogle Scholar
 31.Herdtle, T., Aref, H.: On the geometry of composite bubbles. Proc. Math. Phys. Sci. 434(1891), 441–447 (1991).Google Scholar
 32.Hoffman, D.T.: Smart soap bubbles can do calculus. Math. Teach. 72(5), 377–385 (1979).Google Scholar
 33.Hopcroft, J., Tarjan, R.: Dividing a graph into triconnected components. SIAM J. Comput. 2(3), 135–158 (1973)Google Scholar
 34.Hutchings, M., Morgan, F., Ritoré, M., Ros, A.: Proof of the double bubble conjecture. Ann. Math. 155(2), 459–489 (2002)CrossRefMATHGoogle Scholar
 35.Isenberg, C.: The soap film: an analogue computer. Am. Sci. 64(5), 514–518 (1976).Google Scholar
 36.Isenberg, C.: Chapter 5. The Laplace–Young Equation. In: The Science of Soap Films and Soap Bubbles. Dover, New York (1978)Google Scholar
 37.Kimberling, C.: Triangle Centers and Central Triangles, vol. 129. Utilitas Math, Winnipeg (1998). http://faculty.evansville.edu/ck6/tcenters/tcct.html
 38.Koźmiński, K., Kinnen, E.: An algorithm for finding a rectangular dual of a planar graph for use in area planning for VLSI integrated circuits. In: Proceedings of 21st Conference on Design Automation (DAC’84), pp. 655–656 (1984).Google Scholar
 39.Leinwand, S.M., Lai, Y.T.: An algorithm for building rectangular floorplans. In: Proceedings of 21st Conference on Design Automation (DAC’84), pp. 663–664 (1984).Google Scholar
 40.Löffler, M., Nöllenburg, M.: Planar Lombardi drawings of outerpaths. In: 20th International Symposium, GD 2012, Redmond, WA, September 19–21, 2012, Revised Selected Papers. Lecture Notes in Computer Science, vol. 7704, pp. 561–562. Springer, Berlin (2013).Google Scholar
 41.Mac Lane, S.: A structural characterization of planar combinatorial graphs. Duke Math. J. 3(3), 460–472 (1937)MathSciNetCrossRefMATHGoogle Scholar
 42.Markström, K.: Extremal graphs for some problems on cycles in graphs. Congr. Numer. 171, 179–192 (2004)MathSciNetMATHGoogle Scholar
 43.Mohar, B.: A polynomial time circle packing algorithm. Discrete Math. 117(1–3), 257–263 (1993)MathSciNetCrossRefMATHGoogle Scholar
 44.Morgan, F.: Geometric Measure Theory: A Beginner’s Guide, 4th edn. Academic, Boston (2009)Google Scholar
 45.Plateau, J.A.F.: Statique Experimentale et Theorique des Liquides Soumis aux Seules Forces Moleculaires. GauthierVilliard, Paris (1873)Google Scholar
 46.Pootheri, S.K.: Decomposition characterizations of classes of 2connected graphs. In: 39th Southeast Conference ACM (2001)Google Scholar
 47.Quinn, C.: Leastperimeter partitions of the sphere. Rose–Hulman Inst. Tech. Undergrad. Math. J. 8(2) (2007). http://www.rosehulman.edu/mathjournal/archives/2007/vol8n2/paper11/v8n211pd.pdf. Appendix by Quinn Maurmann
 48.Ribó Mor, A., Rote, G., Schulz, A.: Small grid embeddings of 3polytopes. Discrete Comput. Geom. 45(1), 65–87 (2011)MathSciNetCrossRefMATHGoogle Scholar
 49.Schulz, A.: Drawing 3polytopes with good vertex resolution. J. Graph Algorithms Appl. 15(1), 33–52 (2011)MathSciNetCrossRefMATHGoogle Scholar
 50.Schwerdtfeger, H.: Geometry of Complex Numbers: Circle Geometry, Moebius Transformation, NonEuclidean Geometry. Dover, New York (1979)Google Scholar
 51.Steinitz, E.: Polyeder und Raumeinteilungen. In: Encyclopädie der mathematischen Wissenschaften, Band 3 (Geometries), pp. 1–139. B.G. Teubner, Leipzig (1922)Google Scholar
 52.Stephenson, K.: Introduction to Circle Packing: The Theory of Discrete Analytic Functions. Cambridge University Press, Cambridge (2005)Google Scholar
 53.Sullivan, J.M.: The geometry of bubbles and foams. In: Sadoc, J.F., Rivier, N. (eds.) Foams and Emulsions: Proceedings of NATO Advanced Study Institute on Foams and Emulsions, Emulsions and Cellular Materials, Cargèse, Corsica, 12–24 May, 1997, NATO Adv. Sci. Inst. Ser. E vol. 354, pp. 379–402. Kluwer, Dordrecht (1999).Google Scholar
 54.Taylor, J.E.: The structure of singularities in soapbubblelike and soapfilmlike minimal surfaces. Ann. Math. 103(3), 489–539 (1976)CrossRefMATHGoogle Scholar
 55.Thompson, W.: On the division of space with minimum partitional area. Philos. Mag. 24(151), 503 (1887)CrossRefGoogle Scholar
 56.Tutte, W.T.: On Hamiltonian circuits. J. Lond. Math. Soc. 21(2), 98–101 (1946)MathSciNetCrossRefMATHGoogle Scholar
 57.Ungar, P.: On diagrams representing maps. J. Lond. Math. Soc. 28, 336–342 (1953)MathSciNetCrossRefMATHGoogle Scholar
 58.Weaire, D., Cox, S.J., Graner, F.: Uniqueness, stability and Hessian eigenvalues for twodimensional bubble clusters. Eur. Phys. J. E 7(2), 123–127 (2002)CrossRefGoogle Scholar
 59.Weaire, D., Phelan, R.: A counterexample to Kelvin’s conjecture on minimal surfaces. Philos. Mag. Lett. 69, 107–110 (1994)CrossRefGoogle Scholar
 60.Wichiramala, W.: The Planar Triple Bubble Problem. Ph.D. thesis, University of Illinois at UrbanaChampaign (2002). http://www.math.sc.chula.ac.th/~wacharin/old/maths/thesisss.pdf