Morphing Parallel Graph Drawings
Spriggs, Michael John
MetadataShow full item record
A pair of straight-line drawings of a graph is called parallel if, for every edge of the graph, the line segment that represents the edge in one drawing is parallel with the line segment that represents the edge in the other drawing. We study the problem of morphing between pairs of parallel planar drawings of a graph, keeping all intermediate drawings planar and parallel with the source and target drawings. We call such a morph a parallel morph. Parallel morphs have application to graph visualization. The problem of deciding whether two parallel drawings in the plane admit a parallel morph turns out to be NP-hard in general. However, for some restricted classes of graphs and drawings, we can efficiently decide parallel morphability. Our main positive result is that every pair of parallel simple orthogonal drawings in the plane admits a parallel morph. We give an efficient algorithm that computes such a morph. The number of steps required in a morph produced by our algorithm is linear in the complexity of the graph, where a step involves moving each vertex along a straight line at constant speed. We prove that this upper bound on the number of steps is within a constant factor of the worst-case lower bound. We explore the related problem of computing a parallel morph where edges are required to change length monotonically, i.e. to be either non-increasing or non-decreasing in length. Although parallel orthogonally-convex polygons always admit a monotone parallel morph, deciding morphability under these constraints is NP-hard, even for orthogonal polygons. We also begin a study of parallel morphing in higher dimensions. Parallel drawings of trees in any dimension always admit a parallel morph. This is not so for parallel drawings of cycles in 3-space, even if orthogonal. Similarly, not all pairs of parallel orthogonal polyhedra admit a parallel morph, even if they are topological spheres. In fact, deciding parallel morphability turns out to be PSPACE-hard for both parallel orthogonal polyhedra, and parallel orthogonal drawings in 3-space.