Abstract
We study the problem how to draw a planar graph crossing-free such that every vertex is incident to an angle greater than π. In general a plane straight-line drawing cannot guarantee this property. We present algorithms which construct such drawings with either tangent-continuous biarcs or quadratic Bézier curves (parabolic arcs), even if the positions of the vertices are predefined by a given plane straight-line drawing of the graph. Moreover, the graph can be drawn with circular arcs if the vertices can be placed arbitrarily. The topic is related to non-crossing drawings of multigraphs and vertex labeling.
Keywords: Planar drawings, Pointed pseudotriangulations, Angular resolution
1. Introduction
Throughout this paper, let be a simple planar graph without loops, with finite vertex set V and thus a finite set of edges E. We use the natural understanding of a drawing of a graph. Vertices are represented as points in the plane and edges as continuous and (at least piecewise) differentiable curves connecting the points of adjacent vertices. A drawing is called non-crossing or plane, if the drawn edges do not intersect in their interior. If we consider only topological properties, that is, the order of the edges and consequently of the faces, we refer to this as combinatorial embedding. Given a (combinatorial) embedding of a graph G, the faces of G are defined as usual. By an (abstract) plane graph, we mean an equivalence class of plane drawings under homotopic deformations of the plane. For connected graphs, this amounts to a combinatorial embedding together with a designation of the outer face.
For a drawing of G we denote the placement of a vertex by , and the drawing of an edge by . Note that we consider embedded edges to be open, i.e., the do not contain their endpoints. For simplicity, and as there is no risk of confusion, in the figures we will denote embedded vertices just by v instead of .
The tangent of an edge at a vertex is the limit of the tangents to when approaching along . The tangent ray of at is the open ray along the tangent to at from towards . A drawing gives us a cyclic order of incident edges around each vertex. The angle between two consecutive edges incident to a vertex is defined as the angle between the corresponding tangent rays at that does not contain the tangent ray of any other incident edge. We say that this angle is incident to (and vice versa). In the case of a degree two vertex there are two such angles between the two incident edges. If a vertex has degree at most one, we say that it is incident to one angle (having value 2π).
Definition 1 Pointedness —
A vertex in a drawing is called pointed if it is incident to an angle greater than π (see Fig. 1). We say that a vertex is pointed to a face if its large angle lies in this face. If all vertices in a drawing are pointed we call the drawing pointed.
Fig. 1.
Drawing with a non-pointed vertex and a pointed vertex .
For the special case of straight-line drawings, this definition is identical to the classic definition of pointedness, a term which stems from the field of pseudotriangulations. A pseudotriangle is a simple polygon with exactly three vertices with interior angle smaller than π. A pseudotriangulation is a plane straight-line graph where every interior face is a pseudotriangle and the outer face is convex. Pseudotriangulations have rich applications and are an important geometric data structure, see for example [14,15,18], and the survey [16].
The graphs which can be drawn as pseudotriangulations are well-characterized: A graph is called generically rigid, if its straight-line realization on a generic point set induces a rigid framework (edges represent fixed length rods and vertices represent joints). In two dimensions, there exists an easy combinatorial characterization of generically rigid graphs that become non-rigid after removing an arbitrary edge [10]. These graphs are called Laman graphs. Due to Streinu [18], a graph of a pointed pseudotriangulation is a Laman graph. Conversely, as observed by Haas et al. [8], every plane Laman graph can be realized as a pointed pseudotriangulation. As a consequence, subsets of plane Laman graphs are exactly the graphs that admit a pointed non-crossing straight-line drawing. An operation that preserves the Laman property is the so-called Henneberg operation of type 1: Adding a new vertex of degree 2 to an existing Laman graph will create another Laman graph. A simple example of a planar graph that has no pointed straight-line drawing without crossings is the complete graph with four vertices.
We consider various incarnations of the problem how to draw a plane graph pointed, using different kinds of edge shapes. With arbitrary smooth curves or polygonal chains, the task of constructing a pointed drawing of a given plane graph is trivial. As natural, but still quite simple edge shapes, we study circular arcs, tangent continuous biarcs, and quadratic Bézier curves. Let us briefly review the definition and basic properties of these curves. A tangent continuous biarc consists of two circular arcs that are joined in a way that they form a continuous curve. A quadratic Bézier curve b spanned by three points , and is defined by the equation
It lies completely inside the triangle (which is also called control polygon of b), has and as endpoints, and is tangent to at and to at . The class of quadratic Bézier curves is the same as the class of parabolic arcs.
We also consider the “extent of pointedness”. For example, can we guarantee a free angular space around each vertex bigger than a given fixed angle larger than π? For this stronger pointedness criterion we define the term ε-pointedness.
Definition 2 ε-Pointedness —
Let be a real number. A vertex in the drawing is called ε-pointed if it is incident to an angle greater than . We call a drawing ε-pointed if every vertex is ε-pointed.
In other words, all edges incident to an ε-pointed vertex emanate in a sector of angle ε.
Further, we propose a stronger version of the pointed drawing problem: Given a plane straight-line drawing , can we redraw it as a plane pointed drawing with a certain family of edge shapes without moving the vertices? We call a drawing with this property a pointed redrawing. The motivation of a pointed redrawing is clear: we can benefit from the given drawing and keep its advantages (e.g., all vertices are placed on an integer grid or fulfill other optimality criteria).
A more general redrawing problem would start from a plane embedding with not necessarily straight edges. We have not considered this question.
1.1. Results
In Section 2, we consider the problem of pointed redrawings. We show that every plane straight-line drawing can be redrawn pointed and plane with Bézier curves as well as with tangent continuous biarcs. We show that this is not always possible with circular arcs as edges.
Section 3 then deals with pointed drawings of (abstract) plane graphs. We prove that every plane graph can be drawn ε-pointed with Bézier curves, for arbitrary small . We show that by using biarcs as edges, every plane graph can be drawn such that for all vertices v, all incident edges share a common tangent ray at v. This is maybe one of the most beautiful results in this paper from an aesthetic point of view. We further prove that every plane graph can be drawn pointed and plane with circular arcs as edges. For pointed drawings with biarcs, Bézier curves, or polygonal chains of length two, we give a tight bound on the number of edges that have to be drawn as non-straight curves (Theorem 3.6).
We summarize the results presented in this paper in Table 1. All obtained drawings can be constructed algorithmically, with the exception of the method described in the proof of Theorem 3.2, which needs a disk packing of the plane graph in a preprocessing step.
Table 1.
Results presented in this paper.
| Edge shape | Problem instance | Obtained result |
|---|---|---|
| Circular arcs | Pointed drawing | Possible, Theorem 3.5 |
| Pointed redrawing | Not possible, Theorem 2.3 | |
| Tangent continuous biarcs | ε-pointed drawing | Possible, Theorem 3.2 |
| Pointed redrawing | Possible, Theorem 2.2 | |
| Quadratic Bézier curves | ε-pointed drawing | Possible, Theorem 3.1 |
| Pointed redrawing | Possible, Theorem 2.1 | |
1.2. Related work and applications
Traditionally, graph drawing is mainly concerned with using the simplest class of curves for the edges: straight-line segments. According to Fáryʼs theorem [7], every (simple) plane graph has a plane straight-line drawing in the Euclidean plane. There is a vast literature dealing with the question of efficiently finding plane straight-line drawings that fulfill certain (optimality) criteria (see [3,12] for an overview). Improving work of de Fraysseix, Pach and Pollack [6], Schnyder [17] proved that every plane graph with n vertices has a plane straight-line drawing where the vertices lie on a grid of size . The famous Koebe–Andreev–Thurston circle packing theorem [2,9] states that every plane graph can be embedded with straight-line edges in a way such that its vertices correspond to interior disjoint disks, which touch if and only if the corresponding vertices are connected with an edge, see also [13,4]. We will use both the procedure of de Fraysseix, Pach and Pollack [6] and circle packings as building blocks in our algorithm.
If we relax the condition that the given plane graph has to be simple, Fáryʼs theorem does not hold, for the simple reason that straight-line drawings are not well defined for loops, and multiple edges between two vertices are excluded. However, with more complex edge shapes, one can ask for crossing-free drawing of planar multigraphs with loops. The most natural approach is to allow circular arcs. Drawing multiple edges as circular arcs is no problem, as an edge in a straight-line drawing can be perturbed to any number of close-by circular arcs. Loops, however, require more space. The only circular arc between a vertex and itself is a full circle through this vertex. Thus, the vertex has to be incident to an angle of at least π, which then is sufficient for any number of nested loops at this vertex. This means that the simple graph containing only the non-loop edges must be drawn as a pointed graph. In Section 3.2, we show that such a drawing exists (Theorem 3.5) and as a consequence, we obtain a plane drawing with circular arcs for every planar multigraph (Corollary 3.1). Moreover, an grid is sufficient to embed the vertices of these drawings.
Another potential application for constructing pointed drawings of graphs comes from drawing vertex labels. If the edges incident to a vertex point in all directions, it might be hard to place a label close to its vertex. Thus it is good to have some angular space without incident edges.
These results were presented at the 2007 Canadian Conference on Computational Geometry in Ottawa [1]. One of the results which we announced in the proceedings version cannot be maintained in full generality, see Theorem 3.6 below.
2. Pointed redrawings
We start with the redrawing problem. Throughout this section we consider a plane straight-line drawing as input of our problem instance. Let this drawing be .
Theorem 2.1
For every plane straight-line drawing of a simple planar graph G there exists a pointed plane redrawing with quadratic Bézier curves as edges: for all , and for every vertex , the cyclic order of the edges incident to v in is the same as in .
Proof
Without loss of generality assume that in no two vertices have identical x-coordinates or y-coordinates. Assume further, that the vertices are sorted by y-coordinates in increasing order.
We construct by iteratively replacing the straight-line edges of with quadratic Bézier curves. We first replace the edges incident to the bottom-most vertex , then the edges incident to , and so on. During the construction we maintain the following two invariants:
- (1)
For every vertex , the tangent rays of all already redrawn edges lie in the open halfplane below the horizontal line through .
- (2)
The intermediate drawing is plane.
When replacing the edges incident to a vertex , all edges incident to a vertex , with , have already been redrawn by our algorithm (as all vertices below have already been processed). Let be the edges which have not been replaced yet, sorted by absolute slope, such that has the smallest absolute slope. We redraw these edges in increasing order.
Let be the current edge we want to process (see Fig. 2). Due to invariant (1) and the processing order of the edges incident to we can choose a point in such that the triangle does not contain any vertex or part of an edge of the current drawing in its interior. By convention we place to the right of if e has positive slope, otherwise to the left. We use the triangle t as a control polygon for a quadratic Bézier curve b with endpoints and , which we take as replacement for the straight-line edge . Note that b is tangent to at , and thus invariant (1) still holds for . As b lies completely inside t, and lies completely inside , invariant (1) for and invariant (2) remain fulfilled as well.
Having redrawn all edges in this way, we obtain a drawing whose pointedness follows directly from invariant (1), and that is plane follows from invariant (2).
The easiest way to establish that the cyclic order of edges is unchanged is to augment the drawing to a triangulation by adding edges and deleting the corresponding arcs in the final drawing. For a triangulation a with fixed outer face the order of the edges around a vertex is unique up to a global reflection [19]. Hence, this order has to be preserved in . □
Fig. 2.

Constructing a plane pointed drawing where the edges are quadratic Bézier curves (intermediate step).
The technique used in the proof of Theorem 2.1 can be modified to show a similar statement for (tangent continuous) biarcs due to the following observation.
Lemma 2.1
Consider a triangle spanned by three points , and . There exists a tangent continuous biarc connecting with that lies inside the triangle. Furthermore, the biarc is tangent to at one end and tangent to at the other end.
Proof
Assume that the segment is shorter than . The first arc starts in with tangent direction and touches the line in some point . This point on the segment has the property that the length of is equal to the length of (see Fig. 3). The center of the arc is found by intersecting the line perpendicular to through with the line perpendicular to through . The second part of the biarc is given by the straight line segment (a degenerate circular arc). □
Fig. 3.
Drawing an edge as a tangent continuous biarc in a triangle.
Theorem 2.2
For every plane straight-line drawing of a plane graph G there exists a pointed plane redrawing with tangent continuous biarcs as edges: for all , and for every vertex , the cyclic order of the edges incident to v in is the same as in .
Proof
We re-use the construction from the proof of Theorem 2.1. Whenever we have chosen an appropriate empty triangle for an edge replacement, we place a tangent continuous biarc in it (as described in Lemma 2.1). □
We conclude this section with a negative result on pointed redrawings.
Theorem 2.3
There is a planar graph with a plane straight-line drawing , for which there are no pointed plane drawings with circular arcs as edges such that for all .
Proof
Consider the graph G shown in Fig. 4(a). Vertex is placed at the origin, vertex at , vertex at , and vertex at . The positions of the remaining vertices are obtained by rotating these vertices by ±120 degrees. Since G is 3-connected and planar, its combinatorial embedding is fixed for any non-crossing drawing [19]. This implies that in any such drawing the edge between and has to pass through the narrow passage between and . Since we are restricted to circular arcs, the arc connecting and has to lie in the shaded region depicted in Fig. 4(b). This region is the intersection of the disk touching , , with the disk touching , , . The region lies inside a wedge of angle degrees. Thus, the tangents of two arcs from to the convex hull are separated by an angle of at most . But in order to make the vertex pointed, one of these angles would have to be larger than π. □
Fig. 4.
Example of a straight-line drawing that cannot be redrawn pointed with circular arcs.
Larger examples can be constructed easily. As long as a straight-line drawing similar to Fig. 4(a) is contained inside another drawing, a pointed redrawing with circular arcs is impossible. Moreover, with a construction similar to the one shown in Fig. 4(a), but with many “spokes” (instead of just three), one can force the largest possible angle free of incident edges at the central vertex to be arbitrary small.
3. Pointed drawings
3.1. Pointed drawings with Bézier curves and biarcs
In the last section the placement of the points was determined by a given plane straight-line drawing. If the location of the vertices can be chosen arbitrarily, we get the following easy consequence of Theorem 2.1.
Theorem 3.1
For any and any plane graph G, there exists a plane drawing with quadratic Bézier curves where all vertices are ε-pointed.
Proof
Consider an arbitrary straight-line drawing . In the proof of Theorem 2.1 we showed a construction for a pointed drawing , in which for every vertex v and for every edge e incident to v, the tangent ray of at lies below the horizontal line through . By compressing the x-axis (i.e., scaling by a factor less than 1), the large angle at every vertex in the resulting drawing increases towards 2π. This modification produces no crossings. Moreover, every quadratic Bézier curve is transformed to a quadratic Bézier curve (with respect to the compressed control polygon). Thus, sufficiently compressing results in the desired ε-pointed drawing . □
By similar arguments, it is possible to obtain an ε-pointed drawing with biarcs. In this case the argumentation is more involved, because compressing a biarc in one direction does not result in another biarc. However, we can modify the proof of Theorem 2.1 in the following way: Recall that we used as invariant (1) that for every vertex , the tangent rays of all already redrawn edges lie in the open halfplane below the horizontal line through . To obtain a stronger result, we consider vertical double-wedges centered at the embedded vertices with wedge angle ε, and redefine the region to be the wedge below the horizontal line through the embedded vertex. We compress the x-axis until all edges of the compressed straight-line drawing lie strictly within the double-wedges of their endpoints, and apply the previous approach with the changed invariant to this compressed drawing.
A disadvantage of this construction is that the biarcs tend to consist of a circular arc with small radius and a circular arc with infinite radius. Thus, these drawings are not aesthetically pleasing. For this reason, we present a completely different approach, which also fulfills an even stronger criterion of pointedness. This criterion, namely that all arcs incident to a vertex share a common tangent at this vertex, implies ε-pointedness for any .
Theorem 3.2
Every plane graph has a plane pointed drawing with tangent-continuous biarcs as edges such that is pointed. Moreover, for every vertex v, all edges incident to v share a common tangent at . The directions of these tangents can be independently specified for each vertex.
We emphasize that the locations of the vertices cannot be specified in this theorem.
Proof
According to the Koebe–Andreev–Thurston circle packing theorem [2,9], every plane graph admits a disk packing, where each disk belongs to a vertex (which is the center of the disk), and two disks touch if and only if the corresponding vertices share an edge.
We start with such a disk packing of the graph G (see [4,11,5] for algorithmic aspects of such packings). To get our drawing of the vertices, we place every vertex arbitrarily on the boundary of its disk , avoiding touching points of the disks. The edges incident to will emanate from perpendicular to into the interior of . Thus, we can obtain desired tangent direction for the edges by placing on appropriately. We can avoid the coincidence of with a touching point by rotating the whole disk packing. (There are only finitely many rotations that have to be avoided.)
Now consider an edge . For the embedded vertex let be the tangent through to its disk . Furthermore, let be the touching point of the two adjacent disks and and let be the tangent to and through (see Fig. 5). We draw a circular arc from to inside , the center of being the crossing of and . Similarly, we draw an arc from to inside , with center . Both arcs meet in with the same tangent (orthogonal to ). Therefore, the concatenation of and gives a tangent-continuous biarc. We use as drawing for and apply this construction for all edges in E.
It is left to show that the constructed drawing is non-crossing. Two biarcs could cross only within a disk of the disk packing. Consider all circular arcs incident to the embedded vertex as depicted in Fig. 6. All corresponding circles have their centers on and are passing through , which lies on as well. Thus, any two of these circles intersect only in , and the constructed drawing is plane.
All biarcs incident to an embedded vertex have a common tangent orthogonal to . We can determine this tangent by placing the vertex on appropriately, avoiding the finitely many touching points of . □
Fig. 5.
Construction of a tangent-continuous biarc from two touching disks , .
Fig. 6.
The situation at a vertex that shows that the biarcs do not intersect.
The above proof leaves some freedom to place the vertices on the boundaries of the corresponding disks. If in the drawing no two disk centers have the same x-coordinate, we can place each vertex on the bottommost point of the boundary of its disk. By this, all biarcs have positive curvature and we have no “S-shaped” biarcs (see Fig. 7).
Fig. 7.
A pointed drawing with biarcs as edges, constructed from a disk packing.
Another possibility is to place each vertex farthest away from any touching point of its disk . In this way we can guarantee the radius of any circular arc inside to be at least , where is the radius of , and is the degree of . Unfortunately, in general, we have no control over the radii in the disk packing.
3.2. Pointed drawings with circular arcs
We assume in this section that no two vertices will get the same y-coordinate in the drawing. The drawing we describe next uses a special type of circular arcs.
Definition 3 Upper horizontally tangent arc, UHT-arc —
Let and be two points, where has the larger y-coordinate. We call a circular arc between and upper horizontally tangent if it has a horizontal tangent at .
Definition 4 Upper horizontally tangent triangle, UHT-triangle —
We call a drawing of a triangle upper horizontally tangent if all of its edges are drawn as UHT-arcs (see Fig. 9).
Fig. 9.

The three cases discussed in the proof of Lemma 3.2.
For any two points, the UHT-arc is uniquely defined. Hence, for every point triple the UHT-triangle is unique. The following lemmata show that under certain assumptions the UHT-triangles behave nicely.
Lemma 3.1
Consider the UHT-arc μ between and . Let be the horizontal line through . Then the angle at between and μ is twice as large as the angle at between and .
Proof
The situation stated in the lemma is depicted in Fig. 8. Let α be the angle at between and . This angle is the alternate angle to the angle at between and . Let be the intersection of the tangents of μ at and . The triangle is isosceles and hence the angle between and is α as well. Thus, the angle between μ and equals 2α. □
Fig. 8.
Construction used in the proof of Lemma 3.1.
In the following lemma, we restrict the straight-line edges to have an absolute slope less or equal 1. This implies that the angle between the tangent of an UHT-arc at the lower point and the horizontal line through this lower point is at most . As a consequence, the UHT-arc is x-monotone and is contained in the axis-parallel bounding rectangle spanned by its endpoints.
Lemma 3.2
Consider three points , sorted by their x-coordinates. If
- (i)
the absolute slope of the line segments , and is smaller than 1, and
- (ii)
lies below the line through and , or has the highest y-coordinate,
then , , and span a non-crossing UHT-triangle that is oriented in the same way as the straight-line triangle . That is, the clockwise order of the points around the faces is the same.
Proof
Let be the y-coordinate of , let denote the horizontal line passing through , and let denote the UHT-arc between and .
We prove the lemma by case distinction. Without loss of generality we assume that . Depending on the relative location of we obtain three cases (see Fig. 9).
Case 1
(): and cannot intersect since they have a common tangent at and do not lie on the same circle. The other pairs of arcs have bounding rectangles with disjoint interior, and hence cannot intersect.
Case 2
(): Again, and do not intersect since they have a common tangent at and do not lie on the same circle. The arcs and have bounding rectangles with disjoint interior, and therefore do not intersect either. Since lies below the line segment (condition (ii)), lies below the arc and has larger slope than . Thus, and due to Lemma 3.1, the angle between the tangent of and is larger than the angle between the tangent of and , meaning that is incident to “below” . As the second endpoint of of lies below as well, an intersection of and (to the right of ) would imply a second such intersection. This is impossible, because the two circles induced by and would intersect three times.
Case 3
(): The pairs , and have bounding rectangles with disjoint interior and therefore do not intersect. For the remaining pair of arcs and we apply again Lemma 3.1 and observe that is incident to “above” . As the second endpoint of of lies above as well, it follows that an intersection of and (to the right of ) would again imply that the two circles induced by and intersect three times, which is impossible.
Since in all three cases, the above-below order of the (x-monotone) incident edges at each vertex is preserved, the orientation of the UHT-triangle is identical to the orientation of the straight-line triangle. □
We continue by constructing a straight-line drawing that allows us to substitute its triangles by UHT-triangles. The basic idea goes back to de Fraysseix, Pach and Pollack [6].
Theorem 3.3
(See [6].) A plane triangulated graph has a plane straight-line drawing on a grid.
Let us briefly review the incremental construction used in [6], see Fig. 10. The vertices are inserted in a special (so-called canonical) order, such that the next vertex that is inserted can be drawn on the outer face of the graph induced by the first k vertices. Thereby as invariant it is maintained that the outer boundary of the graph (drawn so far) forms a chain of pieces of slope ±1, resting on a horizontal basis (Fig. 10(a)). The next vertex to be drawn is adjacent to a continuous subsequence of vertices on the outer boundary. To make space for the new edges incident to , the boundary of is split into three pieces, which are separated from each other by shifting them one unit apart (Fig. 10(b)). The middle piece contains all neighbors of except the first and the last one. In [6] it is shown that one can split the upper boundary of at an arbitrary point and shift the pieces apart horizontally, by an arbitrary amount. If an appropriate part of inside the shaded area is shifted along, no crossings are created. Any number of these shifting operation can be carried out in succession. Furthermore, during such a shifting operation, the endpoints of an edge can only be moved farther apart horizontally.
Fig. 10.
(a)–(b) The incremental step in the straight-line drawing algorithm of de Fraysseix, Pach and Pollack [6], and (c) the modification that prevents vertical edges.
We slightly modify this inductive procedure to prove the following theorem.
Theorem 3.4
A plane triangulated graph has a plane straight-line drawing on a grid of size , with the following additional properties:
- (a)
No edge is vertical.
- (b)
No edge is horizontal.
- (c)
In each triangular face, the vertex with the middle x-coordinate is either the vertex with the highest y-coordinate, or it lies below the opposite edge.
Proof
The newly created triangles in the incremental construction described above always fulfill property (c), which can be checked directly, and no horizontal edges are created (property (b)). The only horizontal edge is the bottom base edge. This horizontal edge can easily be avoided by starting the construction with a non-horizontal base triangle in the first step.
To prevent vertical edges, one can split the middle part into two pieces by vertical line through and set them apart by two more units (Fig. 10(c)). A boundary vertex on the vertical line can be assigned to either part. (Two units are necessary to ensure that the left and right part are separated in total by an even offset; this guarantees that the position of , which is defined by the requirement that its leftmost and rightmost incident edges have slope +1 and −1 respectively, gets integer coordinates.)
Adding a vertex preserves the old y-coordinates and the order of the x-coordinates between adjacent vertices, as well as the cyclic order of the edges. As a consequence, properties (b) and (c) can be guaranteed to hold for previously added vertices after shifting. Property (a) is preserved because shifting decreases the absolute slope of an already inserted edge, and by the same reasoning, no edge becomes vertical. The dimensions of the grid increase by units for each new vertex. The initial drawing of the graph with the first three vertices needs a grid. □
We continue with the main result of this section.
Theorem 3.5
Every plane graph G has a plane pointed drawing with circular arcs as edges.
Proof
We assume that the graph G is a triangulation. (Otherwise we add edges such that G becomes a triangulation and delete these edges in the end.) Given an n-vertex plane triangulated graph, the algorithm of Theorem 3.4 constructs drawings in which for every edge its absolute slope is less than 2n. By scaling the x-axis by a factor of 2n, we obtain a drawing in which all edges have slopes in the range between −1 and +1. In this scaled drawing, all triangles fulfill the conditions of Lemma 3.2. We substitute every straight-line edge by its corresponding UHT-arc. By this substitution, the order of the edges around a vertex is preserved, and every straight-line triangle is replaced by its corresponding UHT-triangle. Thus, and due to Lemma 3.2, the obtained circular drawing is crossing-free (edges on the upper hull are non-crossing as they have bounding-rectangles with disjoint interior).
Around every vertex there is a number of edges that emanate in the horizontal direction, plus a number of additional edges that point upward. The latter type of edges have distinct tangent directions. Thus one can slightly bend every edge upward and achieve a pointed drawing with circular arcs. □
Due to Theorem 3.4, pointed drawings constructed as above lie on an grid. An example of such a drawing is shown in Fig. 11.
Fig. 11.
An example of a pointed drawing with circular arcs. The horizontal stretch factor was chosen just sufficiently to ensure that all straight edges have absolute slope less than 1, instead of 2n.
As a consequence, we obtain the following result about multigraphs with loops, as mentioned in the Introduction:
Corollary 3.1
Every planar multigraph, possibly with loops, admits a plane drawing with circular arcs, whose vertices lie on an grid.
Note that this is no longer true if we insist on a particular combinatorial embedding. For example, we cannot have three non-nested loops incident to a vertex.
3.3. Pointed drawings with the help of combinatorial pseudotriangulations
A different way to find a pointed drawing uses the framework established by Haas et al. [8]. Let us recall some terminology first. A combinatorial pseudotriangulation is a planar combinatorial embedding of an (abstract) connected planar graph G with an assignment of the tags big/small to the angles of G such that the following conditions are fulfilled:
-
(1)
Every interior face has exactly three small angles.
-
(2)
The outer face has only angles labeled big.
-
(3)
Every vertex is incident to at most one angle labeled big. If it is incident to a big angle, it is called pointed (in the face where is has its big angle).
-
(4)
A vertex of degree at most 2 is incident to one angle labeled big.
An angle assignment that fulfills these conditions is called cpt-assignment.
By [8, Theorem 6], every combinatorial pseudotriangulation whose underlying graph is a Laman graph can be embedded as a pseudotriangulation such that every angle with tag big is larger than π in the drawing, and every angle with tag small is smaller than π in the drawing. Furthermore, the shape of every face can be specified up to affine transformations [8, Theorem 11].
Lemma 3.3
Every triangulation with n vertices can be turned into a combinatorial pointed pseudotriangulation by subdividing edges, each with exactly one additional vertex. Furthermore, the underlying graph is a Laman graph.
Proof
We construct a cpt-assignment by an iterative procedure that is guided by the canonical order of the plane graph (see Theorem 3.3). The assignment ensures that all graphs have a valid cpt-assignment. This can be easily made true for , which is a single triangle. Here, the three angles at the boundary get the tag big, and the three interior angles get the tag small. Assume now that we add the vertex to to obtain . We therefore connect with its neighbors on the boundary of (see Fig. 10(a)). All new edges that are not on the boundary of are subdivided by adding a new vertex on each such edge. The cpt-assignment is extended such that every exterior angle of gets the tag big, and all newly added faces have exactly three small angles. Every vertex that vanishes from the boundary will now realize its big angle in one of the newly created faces. The simple scheme how to assign the angles is depicted in Fig. 12. From a different perspective we add the vertex by linking it to by two new edges. This operation is a Henneberg-1 step and it preserves the Laman property of the graph. The vertices that are introduced by subdividing edges are a result of additional Henneberg-1 steps. Since is a Laman graph, also is a Laman graph.
In every step we add two edges that are not subdivided, and there are steps necessary to go from to . Thus, in total, we add edges that are not subdivided. Since the triangulation G has edges, of them are subdivided. □
Fig. 12.
Extending the cpt-assignment during the construction of G by its canonical order.
Theorem 3.6
Every plane graph G with n vertices has a plane pointed drawing with either quadratic Bézier curves, tangent continuous biarcs, or 2-chains (polygonal chains consisting of two line segments), which uses at most non-straight edges.
Proof
We assume that the graph G is a triangulation. (Otherwise we add edges such that G becomes a triangulation and delete these edges in the end.) As a first step, we turn G into a combinatorial pointed pseudotriangulation as done in Lemma 3.3. By this we creates four types of bounded faces:
- (i)
triangles,
- (ii)
quadrilaterals with a degree-2 vertex with big angle,
- (iii)
quadrilaterals with a degree-2 vertex with small angle and the big angle is realized next to it,
- (iv)
pentagons with two non-adjacent degree-2 vertices, one of them with a big, one of them with a small angle.
We apply the algorithm of [8] to realize the combinatorial pseudotriangulation. In all faces of type (iii) the interior of the triangle spanned by the degree-2 vertex and its two neighbors is empty, see Fig. 13(b). The same is not necessarily true for the faces of type (iv). However, the algorithm of [8] allows us to specify the face shapes up to affine transformations. By giving all faces of type (iv) the shape shown in Fig. 13(a) one assures that the interior of shaded triangle in Fig. 13(c) is empty. This property is preserved under affine transformations.
What we have obtained so far is a pointed drawing, where at most edges are drawn as 2-chains, which proves the theorem for the case of polygonal chains.
For the case of Bézier curves or biarcs, we consider for each 2-chain , , (with being the vertex of degree two) the triangle . Δ lies in a pseudotriangle in which has a small angle. Due to the affine shape of the faces, Δ has an empty interior. We use these triangles as control polygons as shown in Fig. 13 and replace the 2-chains by Bézier curves or biarcs (similar to Lemma 2.1). □
Fig. 13.

Affine shapes of faces used for the drawing (a)–(b) and control triangles for curve replacement inside these faces (c)–(d). The degree-2 vertices that came from edge subdivisions are marked as boxes.
In general it is not possible to draw a planar graph pointed using a larger number of (non-crossing) straight-line edges, since every maximal pointed straight-line graph has at most edges [18], and due to Eulerʼs formula a triangulation has edges. In this sense, Theorem 3.6 is optimal.
We demonstrate the construction used in the proof of Theorem 3.6 by an example. Let G be the graph depicted in Fig. 14(a). The big angles of the cpt-assignment and the subdivisions computed by our method are shown in Fig. 14(b). This leads to the pointed pseudotriangulation in Fig. 14(c) and finally to a pointed drawing with only three Bézier curves as shown in Fig. 14(d).
Fig. 14.
Construction of a pointed drawing with Bézier curves with help of a combinatorial pseudotriangulation as example.
In the proceedings version of this paper, we made a stronger claim [1, Theorem 7]: for each inner vertex, the face in which it is pointed can be chosen arbitrarily. Fig. 15(a) shows a counterexample where this is not true. It is not possible to make the three marked angles big with at most non-straight edges which are either quadratic Bézier curves or 2-chains. The reason is that a single quadratic Bézier curve bends by less than π. Therefore, in a triangle with three vertices that are pointed in the interior face, all three edges must be curved, see Fig. 15(b): if we proceed clockwise along the boundary, the tangent direction turns right by less than π along each edge. At each vertex, it makes a left turn, by pointedness. With less than three curved edges, the tangent direction cannot complete a full right turn of 2π. The same argument works for 2-chains. By a similar argument, a triangle with two vertices that are pointed in the interior face needs at least two curved edges. Applying these facts to our example, we see that all three edges in the triangle ABC must be curved. With a total of vertices, we have thus exhausted our reservoir of at most non-straight edges. But then the two straight edges and together with the curved edge BC cannot make pointed interior angles at B and C in the triangle .
Fig. 15.
It is not possible to get the three inner vertices pointed in the inner triangle with only 3 quadratic Bézier edges.
This example does not rule out the possibility that pointedness in the chosen faces can be achieved with more than curved edges, or with biarcs.
Acknowledgements
Research on this topic was initiated during the fourth European Pseudotriangulation Week in Eindhoven (The Netherlands), organized by Bettina Speckmann. We would like to thank Thomas Hackl, Michael Hoffmann, David Orden, Michel Pocchiola, Jack Snoeyink, and Bettina Speckmann for the inspiring spirit and for many valuable discussions. We also thank the anonymous referees for helpful comments.
Communicated by P. Bose and P. Carmi
Footnotes
Research supported by the Austrian FWF Joint Research Project ‘Industrial Geometry’S9205-N12.
Contributor Information
Oswin Aichholzer, Email: oaich@ist.tugraz.at.
Günter Rote, Email: rote@inf.fu-berlin.de.
André Schulz, Email: andre.schulz@uni-muenster.de.
Birgit Vogtenhuber, Email: bvogt@ist.tugraz.at.
References
- 1.O. Aichholzer, G. Rote, A. Schulz, B. Vogtenhuber, Pointed drawings of planar graphs, in: P. Bose (Ed.), Proceedings of the 19th Canadian Conference on Computational Geometry, Ottawa, 2007, pp. 237–240. [DOI] [PMC free article] [PubMed]
- 2.Andreev E.M. On convex polyhedra in Lobačevskiĭ space. Math. USSR Sb. 1970;10(3):413–440. [Google Scholar]
- 3.Battista G.D., Eades P., Tamassia R.R., Tollis I. Prentice–Hall; Englewood Cliffs, NJ: 1998. Graph Drawing: Algorithms for Geometric Representations of Graphs. [Google Scholar]
- 4.Colin de Verdière Y. Un principe variationnel pour les empilements de cercles. Invent. Math. 1991;104(3):655–669. [Google Scholar]
- 5.Collins C.R., Stephenson K. A circle packing algorithm. Comput. Geom. Theory Appl. 2003;25(3):233–256. [Google Scholar]
- 6.de Fraysseix H., Pach J., Pollack R. How to draw a planar graph on a grid. Combinatorica. 1990;10(1):41–51. [Google Scholar]
- 7.Fáry I. On straight line representations of planar graphs. Acta Univ. Szeged. Sect. Sci. Math. 1948;11:229–233. [Google Scholar]
- 8.Haas R., Orden D., Rote G., Santos F., Servatius B., Servatius H., Souvaine D., Streinu I., Whiteley W. Planar minimally rigid graphs and pseudo-triangulations. Comput. Geom. Theory Appl. 2005;31(1–2):31–61. [Google Scholar]
- 9.Koebe P. Kontaktprobleme der konformen Abbildung. Ber. Verh. Sächs. Akad. Wiss. Leipzig, Math.-Phys. Kl. 1936;88:141–164. [Google Scholar]
- 10.Laman G. On graphs and rigidity of plane skeletal structures. J. Engrg. Math. Oct. 1970;4(4):331–340. [Google Scholar]
- 11.Mohar B. A polynomial time circle packing algorithm. Discrete Math. 1993;117(1–3):257–263. [Google Scholar]
- 12.Nishizeki T., Rahman M.S. World Scientific; 2004. Planar Graph Drawing. [Google Scholar]
- 13.Pach J., Agarwal P.K. John Wiley & Sons Inc.; New York: 1995. Combinatorial Geometry. (Wiley–Intersci. Ser. Discrete Math. Optim.). [Google Scholar]
- 14.Pocchiola M., Vegter G. Proceedings of the 12th Annual Symposium on Computational Geometry, SCG ʼ96. ACM; New York, NY, USA: 1996. Pseudo-triangulations: theory and applications; pp. 291–300. [Google Scholar]
- 15.Pocchiola M., Vegter G. The visibility complex. Internat. J. Comput. Geom. Appl. 1996;6(3):279–308. [Google Scholar]
- 16.Rote G., Santos F., Streinu I. Surveys on Discrete and Computational Geometry—Twenty Years Later. vol. 453. American Mathematical Society; 2008. Pseudo-triangulations—a survey; pp. 343–410. (Contemp. Math.). [Google Scholar]
- 17.Schnyder W. Proceedings of the First Annual ACM-SIAM Symposium on Discrete Algorithms, SODA ʼ90. Society for Industrial and Applied Mathematics; Philadelphia, PA, USA: 1990. Embedding planar graphs on the grid; pp. 138–148. [Google Scholar]
- 18.Streinu I. Pseudo-triangulations, rigidity and motion planning. Discrete Comput. Geom. 2005;34(4):587–635. [Google Scholar]
- 19.Whitney H. A set of topological invariants for graphs. Amer. J. Math. 1933;55:235–321. [Google Scholar]












