In this paper we consider the problem of drawing a planar graph using circular arcs as edges, given a one-to-one mapping between the vertices of the graph and a set of points in the plane. If for every edge we have only two possible circular arcs, then a simple reduction to 2SAT yields an O(n 2) algorithm to find out if a drawing with no crossings can be realized, where n is the number of vertices in the graph. We present an improved O(n7/4 poly log n) time algorithm for this problem. For the special case where the possible circular arcs for each edge are of the same length, we present an even more efficient algorithm that runs in O(n3/2 poly log n) time. We also consider two related optimization versions of the problem. First we show that minimizing the number of crossings is NP-hard. Second we show that maximizing the number of edges that can be realized without crossings is also NP-hard. Finally, we show that if we have three or more possible circular arcs per edge, deciding whether a drawing with no crossings can be realized is NP-hard.
ASJC Scopus subject areas
- Theoretical Computer Science
- Computer Science(all)
- Computer Science Applications
- Geometry and Topology
- Computational Theory and Mathematics